xref: /plan9/sys/src/cmd/usb/probe (revision 25fc69938fdecc61cd09e795cbe2d2f72f1082b1)
1#!/bin/rc
2# usb/probe [-h] - list all usb devices, including hubs
3rfork e
4test -e /dev/usb || bind -a '#u' /dev || {
5	echo no '#u/usb' >[1=2]
6	exit nousb
7}
8
9filter = cat
10if (~ $1 -h)
11	filter = (grep -v ' (root)?hub ')
12
13awk 'BEGIN	{ ep = "" }
14$1 ~ /ep[0-9]+\.0/ && $2 == "enabled" && $NF ~ /busy|idle/ {
15	ep=$1
16	next
17}
18{
19	if(ep != ""){
20		printf "%s %s\n", ep, $0
21		ep = ""
22	}
23}
24' /dev/usb/ctl | $filter
25
26exit ''
27