16 lines
468 B
Bash
16 lines
468 B
Bash
#!/bin/bash
|
|
|
|
for dev in /sys/bus/usb/devices/*; do
|
|
# Only match main device entries (no colon)
|
|
if [[ $(basename "$dev") =~ ^[0-9]+-[0-9]+$ ]]; then
|
|
if [ -e "$dev/driver" ]; then
|
|
echo "-----"
|
|
echo "Device path: $dev"
|
|
dev_name=$(basename "$dev")
|
|
echo "Unbinding: $dev_name"
|
|
echo "$dev_name" > /sys/bus/usb/drivers/usb/unbind
|
|
else
|
|
echo "Skipping: $dev"
|
|
fi
|
|
fi
|
|
done |