Получить информацию об устройстве (например, продукт, модель) из команды adb

Один из способов добиться этого состоит в следующем:

adb devices -l

Пример вывода:

123abc12               device product:<id> model:<id> device:<id>
456abc45               device product:<id> model:<id> device:<id>

Но это список всех подключенных устройств, но я хочу получить информацию для определенного устройства.
Мне нужна информация только о" 123abc12". Выход должен быть:

123abc12               device product:<id> model:<id> device:<id>

Второе устройство не должно отображаться.
У меня есть имя устройства i.e 123abc12, и его можно использовать для получения необходимой информации, но я не знаю, как это сделать.
Спасибо.

Ответ 1

Правильный способ сделать это:

adb -s 123abc12 shell getprop

Что даст вам список всех доступных свойств и их значений. Когда вы узнаете, какое свойство вы хотите, вы можете указать имя в качестве аргумента getprop для прямого доступа к его значению, например:

adb -s 123abc12 shell getprop ro.product.model

Детали в adb devices -l состоят из следующих трех свойств: ro.product.name, ro.product.model и ro.product.device.

Обратите внимание, что оболочка ADB завершает строки с помощью \r\n, которые в зависимости от вашей платформы могут затруднить доступ к точной величине (например, вместо Nexus 7), возможно, вы получите Nexus 7\r).

Ответ 2

Почему бы вам не попробовать grep вернуть вашу команду? Что-то вроде:

adb devices -l | grep 123abc12

Он должен возвращать только строку, которую вы хотите.