如何将stderr重定向到cron作业中的文件

时间:2016-01-23 18:25:17

标签: sh crontab

我的crontab中有一个像这样设置的cron作业:

*/1 * * * *  sudo /home/pi/coup/sensor.py  >> /home/pi/sensorLog.txt

它将stdout放入sensorLog.txt,它生成的任何stderr都会被放入电子邮件中。

我希望stdout和stderr都进入sensorLog.txt,所以我将1>&2添加到crontab,这应该让stderr进入与stdout相同的位置。它现在看起来像这样:

*/1 * * * *  sudo /home/pi/coup/sensor.py  >> /home/pi/sensorLog.txt 1>&2

现在,stdout和stderr都被放入电子邮件中,并且没有任何内容被添加到文件中。这与我想要完成的事情相反。

如何让stdout和stderr重定向到文件?

1 个答案:

答案 0 :(得分:22)

反过来说:

*/1 * * * *  sudo /home/pi/coup/sensor.py  >> /home/pi/sensorLog.txt 2>&1

2>&1会将标准错误(2)重定向到标准输出(1),然后将其重定向到您的日志文件。所以,最后,stderr和stdout都会转到你的sensorLog.txt

相关问题