我在 OpenWrt 盒子上设置了一个简单的脚本,用于检查本地网络中的某台计算机是否正在流式传输,如果是,则脚本启动 wget | madplay 来播放流式传输。如果我以 root 身份运行脚本,它会运行良好,但如果我将其放入 crontab 中,它会失败。
根 crontab 条目
@reboot /root/check.sh > /root/check.log 2>&1
脚本-check.sh
#!/bin/sh
while :; do
checkProcess=$(/usr/bin/pgrep /usr/bin/madplay)
if [ "$checkProcess" = "" ]; then
/usr/bin/ncat -w 0.1 192.168.0.10 50000
output=$?
if [ $output == "0" ]; then
/usr/bin/wget -O - http://192.168.0.10:50000/stream/ | /usr/bin/madplay -
fi
fi
sleep 2
done
错误-来自 check.log
Unable to register IOD #2: Operation not permitted
此外,如果您对如何改进脚本有任何建议,我会很乐意接受。
提前致谢!