Get device information (such as product, model) from adb command

Destructor picture Destructor · Feb 28, 2014 · Viewed 124.4k times · Source

One way to achieve this is as follows:

adb devices -l

example output:

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

But this list's out all devices connected, but I want to get the information for a specific device.
I want information only about "123abc12". The output should be:

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

The second device should not be shown.
I have the device name i.e 123abc12, and it can be used to get the required information, but I don't know how.
Thanks.

Answer

Simo Kinnunen picture Simo Kinnunen · Apr 5, 2014

The correct way to do it would be:

adb -s 123abc12 shell getprop

Which will give you a list of all available properties and their values. Once you know which property you want, you can give the name as an argument to getprop to access its value directly, like this:

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

The details in adb devices -l consist of the following three properties: ro.product.name, ro.product.model and ro.product.device.

Note that ADB shell ends lines with \r\n, which depending on your platform might or might not make it more difficult to access the exact value (e.g. instead of Nexus 7 you might get Nexus 7\r).