我在我的crontab中有一个像这样设置的cron作业:
*/1 * * * * sudo /home/pi/coup/sensor.py >> /home/pi/sensorLog.txt
Run Code Online (Sandbox Code Playgroud)
它将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
Run Code Online (Sandbox Code Playgroud)
现在,stdout和stderr都被放入电子邮件中,并且没有任何内容添加到文件中.这与我想要完成的事情相反.
如何让stdout和stderr重定向到文件?
mau*_*uro 26
反过来说:
*/1 * * * * sudo /home/pi/coup/sensor.py >> /home/pi/sensorLog.txt 2>&1
Run Code Online (Sandbox Code Playgroud)
2>&1将标准错误(2)重定向到标准输出(1),然后将其重定向到您的日志文件.所以,最后,stderr和stdout都会转到你的sensorLog.txt
| 归档时间: |
|
| 查看次数: |
12265 次 |
| 最近记录: |