Comment puis-je exécuter logcat sur plusieurs appareils en même temps ? La commande "adb logcat" renvoie une erreur :
error: more than one device and emulator
Comment puis-je exécuter logcat sur plusieurs appareils en même temps ? La commande "adb logcat" renvoie une erreur :
error: more than one device and emulator
Utilisez le -s
option adb
:
adb -s <serialnumber>
Exemple
C:\Users\lel>adb devices
List of devices attached
192.168.198.101:5555 device
0123456789ABCDEF device
adb -s 0123456789ABCDEF logcat
adb -s 192.168.198.101:5555 logcat
Vous pouvez combiner grep
avec ceci, pour obtenir toutes les lignes qui le contiennent.
un exemple est avec System.out
Exemple:
adb -s 192.168.198.101:5555 logcat | grep "System.out"
J'ai pensé que cela pourrait être utile. J'ai ce script qui m'aide beaucoup. Il connecte chaque appareil à un fichier différent. Pour arrêter la journalisation, appuyez simplement sur CTRL+C.
#! /bin/bash
devices=`adb devices | grep 'device$' | cut -f1`
pids=""
for device in $devices
do
log_file="$device-`date +%d-%m-%H:%M:%S`.log"
echo "Logging device $device to \"$log_file\""
adb -s $device logcat -v threadtime > $log_file &
pids="$pids $!"
done
echo "Children PIDs: $pids"
killemall()
{
echo "Killing children (what a shame...)"
for pid in $pids
do
echo "Killing $pid"
kill -TERM $pid
done
}
trap killemall INT
wait
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.