184363d68SDavid du Colombier#!/bin/rc 2*25fc6993SDavid du Colombier# usb/probe [-h] - list all usb devices, including hubs 384363d68SDavid du Colombierrfork e 4906943f9SDavid du Colombiertest -e /dev/usb || bind -a '#u' /dev || { 5906943f9SDavid du Colombier echo no '#u/usb' >[1=2] 6906943f9SDavid du Colombier exit nousb 784363d68SDavid du Colombier} 8906943f9SDavid du Colombier 9*25fc6993SDavid du Colombierfilter = cat 10*25fc6993SDavid du Colombierif (~ $1 -h) 11*25fc6993SDavid du Colombier filter = (grep -v ' (root)?hub ') 12*25fc6993SDavid du Colombier 13*25fc6993SDavid du Colombierawk 'BEGIN { ep = "" } 14906943f9SDavid du Colombier$1 ~ /ep[0-9]+\.0/ && $2 == "enabled" && $NF ~ /busy|idle/ { 15*25fc6993SDavid du Colombier ep=$1 16*25fc6993SDavid du Colombier next 17906943f9SDavid du Colombier} 18906943f9SDavid du Colombier{ 19906943f9SDavid du Colombier if(ep != ""){ 20*25fc6993SDavid du Colombier printf "%s %s\n", ep, $0 21*25fc6993SDavid du Colombier ep = "" 22906943f9SDavid du Colombier } 23906943f9SDavid du Colombier} 24*25fc6993SDavid du Colombier' /dev/usb/ctl | $filter 25906943f9SDavid du Colombier 26906943f9SDavid du Colombierexit '' 27