Мне нужна помощь, чтобы отслеживать мой журнал и найти конкретную фразу, а после этого перезагрузить мое USB-устройство!
Я пробовал Unbind и Bind, но я не думаю, что это сработало ... После моих тестовЯ обнаружил, что на устройстве USB нет символической ссылки и порты смены устройства.
Я нашел это для части мониторинга:
line = $ (grep -m 1 YourKeyWord <(exectail -f /directory/of/log.out); kill $! 2> / dev / null)
if [ "$line"!="" ]
then
echo "Found $line"
service something start
line=""
echo "Now we can look for ABC"
fi
Мой вопрос по этому поводу: Хвост будет продолжаться?
И для сброса USB я нашел эти 2 кода:
#!/bin/bash
#type lsusb to find "vendor" and "product" ID in terminal
set -euo pipefail
IFS=$'\n\t'
#edit the below two lines of vendor and product values using lsusb result
dev=$(lsusb -t | grep usbdevicename | grep 'If 1' | cut -d' ' -f13|cut -d"," -f1)
#VENDOR=05a3
#PRODUCT=9230
VENDOR=$(lsusb -s $dev | cut -d' ' -f6 | cut -d: -f1)
PRODUCT=$(lsusb -s $dev | cut -d' ' -f6 | cut -d: -f2)
for DIR in $(find /sys/bus/usb/devices/ -maxdepth 1 -type l); do
if [[ -f $DIR/idVendor && -f $DIR/idProduct &&
$(cat $DIR/idVendor) == $VENDOR && $(cat $DIR/idProduct) == $PRODUCT ]]; then
echo 0 > $DIR/authorized
sleep 0.5
echo 1 > $DIR/authorized
fi
done
#!/bin/bash
set -euo pipefail
IFS=$'\n\t'
VENDOR="045e"
PRODUCT="0719"
for DIR in $(find /sys/bus/usb/devices/ -maxdepth 1 -type l); do
if [[ -f $DIR/idVendor && -f $DIR/idProduct &&
$(cat $DIR/idVendor) == $VENDOR && $(cat $DIR/idProduct) == $PRODUCT ]]; then
echo 0 > $DIR/authorized
sleep 0.5
echo 1 > $DIR/authorized
fi
done
Мне нужна помощь, чтобы узнать, что является лучшим выбором, и если кто-нибудь знает лучшее решение для этого ... Для сброса USB я обнаружилSEC, но я пытаюсь сделать это без установки чего-либо ... Заранее спасибо!