我有bash脚本meteostart
和meteo
。这两个脚本都从命令行运行。
在09:32,灯亮起但从未关闭,就像从命令行运行/bin/meteo
时一样。使用cron作业/bin/meteo
也可以正常工作(开/关闪烁5次)。
仅当从脚本meteo
调用脚本meteostart
时,它才会起作用。
可能是什么问题?
meteostart
:
#!/bin/bash
at 09:32 today -f /bin/meteo
meteo
:
#!/bin/bash -x
for i in $(seq 5); do
echo -n -e "\x37\x00\x55" | nc -u -q 1 192.168.0.6 8899 #Zone 3 on
sleep 0.5
echo -n -e "\x3A\x00\x55" | nc -u -q 1 192.168.0.6 8899 #Zone 3 off
done
sleep 0.5
exit
答案 0 :(得分:0)
确保在shell脚本中使用绝对路径到所有内容(例如nc)。您的环境可能不是您所期望的(例如,PATH变量)。
答案 1 :(得分:0)
-f
specifies从中读取作业的文件:
-f file Reads the job from file rather than standard input.
我认为您想要做的是以下内容:
echo /bin/meteo | at 09:32 today