4

いくつかの Android デバイスをラップトップに接続しました。そして、私は彼らのSNをリストすることができます

adb devices

出力:

List of devices attached 
015d4a826e0ffb0f    device
015d4a826e43fb16    device
015d41d830240b11    device
015d2578a7280b02    device

次のように、すべてのデバイスでいくつかの操作を実行したい

adb -s $device install foo.apk

deviceしかし、によって取得されたすべてのデバイスを変数に反復させる方法がわかりませんadb devices

4

3 に答える 3

3

xargsとを使用できますawk

adb devices | awk 'NR>1{print $1}' | xargs -n1 -I% adb -s % install foo.apk

デモ:

入力を a に入力し、出力を確認するためfileに使用します。echo

$ awk 'NR>1{print $1}' file | xargs -n1 -I% echo adb -s % install foo.apk
adb -s 015d4a826e0ffb0f install foo.apk
adb -s 015d4a826e43fb16 install foo.apk
adb -s 015d41d830240b11 install foo.apk
adb -s 015d2578a7280b02 install foo.apk
于 2013-06-11T15:38:43.310 に答える
3

主なトリックは、デバイスのシリアルを他の出力から分離することです。ヘッダーと 2 番目の列を切り取る必要があります。次のようなものが機能します。

for DEVICE in `adb devices | grep -v "List" | awk '{print $1}'`
do 
  adb -s $DEVICE install foo.apk
done
于 2013-06-11T15:24:06.843 に答える