Skip to content

Instantly share code, notes, and snippets.

@sugiana
Created May 17, 2015 03:47
Show Gist options
  • Save sugiana/d5b8a8aeba78c4abc2cb to your computer and use it in GitHub Desktop.
Save sugiana/d5b8a8aeba78c4abc2cb to your computer and use it in GitHub Desktop.
import commands
from glob import glob
SHOW_KEYS = ['bcdUSB', 'idVendor', 'idProduct']
for bus in glob('/dev/bus/usb/*'):
vals = dict()
for dev in glob('{b}/*'.format(b=bus)):
cmd = 'lsusb -D {d}'.format(d=dev)
s = commands.getoutput(cmd)
for line in s.splitlines():
t = line.strip().split()
if t[0] in SHOW_KEYS:
vals[t[0]] = ' '.join(t[1:])
displays = ['Device {d}'.format(d=dev)]
for key in SHOW_KEYS:
displays.append('{k} {v}'.format(k=key, v=vals[key]))
print(', '.join(displays))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment