用crontab写日志

我正在使用crontab自动启动程序,在cronatb中使用以下命令

@reboot sudo python /home/Desktop/Appllication.py

是否有可能写入所有的日志(错误和其他东西)通过追加一些上述命令,以便cron写入所有错误/任何相关的事件到日志?

更新:当使用print命令单独运行时,代码在python空闲terminal中输出值。 如何将打印在terminal上的这些数据写入日志文件。 例如,如果我的代码是打印“食物早上”,我怎么得到这个写入到日志文件,而不是打印在terminal上。

testing代码:

import time while(1): print "testing" time.sleep(5) 

如果/home/Desktop/Application.py将错误日志打印到STDOUT,则可以简单地重定向脚本的输出

 python /home/Desktop/Application.py >> /home/my_application_log.txt 

用一些有用的链接扩大答案。

将所有输出重定向到文件是一个非常好的SO线程。 您可以使用测试代码作为输出生成器来尝试那里的代码片段。

此外,Python带有一个出色的日志模块。 如果你想整合一个健壮的日志记录系统,我强烈建议查看它: python日志记录

你其实包括一个sudo。 Sudo需要密码,您必须在sudoers中添加一个配置项才能运行无密码的脚本。 你的另一个选择是将其添加到root cron。 使用@Haleemur的重定向命令将输出重定向到日志。 我实际上建议使用以下以防万一它失败并输出到STDERR

 @reboot python /home/Desktop/Application.py >> /home/Desktop/log_file 2>&1 

更新:

尝试从终端运行以下命令

 python /home/Desktop/Application.py >> /home/Desktop/log_file 2>&1 

如果它在命令行中工作,没有理由不应该在cron中工作。