我有一个BeagleBone Black运行Debian,通过USB连接868Mhz加密狗,显示在/ dev / ttyACM0 在某些情况下,重启后设备不会显示。因此,我编写了以下bash脚本并将其添加到crontab(@reboot)
#!/bin/bash
# Checks if CUL is available. Reboots otherwise
sleep 5m
if [ "ls /dev | grep ttyACM0" ];
then
echo "CUL is available"
else
echo "CUL is not available. Rebooting..."
reboot
fi
但这种做法似乎无效。
答案 0 :(得分:2)
答案 1 :(得分:1)
我认为你的脚本总是说CUL是可用的并且永远不会重新启动..你的if
条件只是一个字符串,它将始终返回true。将其替换为命令替换,并在其中添加实际条件(-n
测试以查看字符串是否为非零长度):
if [ -n "$(ls /dev | grep ttyACM0)" ];