我有一个bash脚本用我的覆盆子pi相机拍照,用python脚本测量湿度和温度。
#!/bin/bash
raspistill -o /var/www/image.jpg -t 1000
python Adafruit_Python_DHT/examples/AdafruitDHT.py 2302 4 | tr -s ' ' | grep -o '[0-9]\+\.[0-9]\+' > /var/www/sensor.out
如果我正常执行它,bash脚本会起作用,但是如果我把它放在crontab中(作为root)它仍然执行第一行但第二行返回一个空文件。它删除但不替换旧信息。
pi@rpi ~ $ sudo crontab -e
GNU nano 2.2.6 File: /tmp/crontab.Y0eieF/crontab
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/home/pi
*/1 * * * * /home/pi/testcron.sh
我不知道它为什么不起作用,是不是因为命名管道?
答案 0 :(得分:1)
您在脚本中指定了相对路径,但是您没有从cronjob在主目录中启动。在bash脚本中使用绝对路径。