Urządzenia ADB - Zdobądź wszystkie adresy IP odpowiadające stanu urządzenia

0

Pytanie

Gdy wydam polecenie:

adb devices

Mam taki wynik:

List of devices attached
192.168.1.200:5555      offline
192.168.1.201:5555      device
192.168.1.202:5555      unauthorized
192.168.1.203:5555      device

Mam ten skrypt bash, ale to nie działa, bo działa tylko na urządzeniach podłączonych do niego:

#!/bin/bash
#init
a=$(adb devices | cut -f1 | cut -f1 -d\ );
echo $a;
for x in $a;
do 
    if [ "$x" == "List" ]; 
        then continue; 
    fi;
    echo $x
    adb connect $x
done

Jak uzyskać adresu IP z urządzenia na liście i pominąć adresu IP z innych wartości w liście?

adb android bash parsing
2021-11-23 17:45:40
2
0

Użyj polecenia grep" do filtrowania według nazwy i bez konieczności dodatkowego "eliminacji".

a=$(adb devices | grep "device" | cut -f1 -d\);
2021-11-23 18:08:29

Należy pamiętać, że grep odpowiada device w dowolnym miejscu na linii, więc jest to też zgodne z nazwy. Skorzystaj z awk jak sugerują inne lub, co najmniej, grep 'device$' aby utrzymać się na końcu linii.
Diego Torres Milano
0

a=$(adb devices | sed "1 d" | grep "device" | cut -f1 -d\ );

Dodane jeszcze dwa filtry:

sed "1 d" - opuść pierwszą linię, wyświetl resztę

grep "device" - należy używać tylko wiersze zawierające "urządzenie".

Możesz usunąć instrukcję if, tak jak on jest przetwarzany sed Filtr.

2021-11-23 18:08:51

W innych językach

Ta strona jest w innych językach

Русский
..................................................................................................................
Italiano
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................