如何知道 cron job 写得是否正确?

如何知道 cron job 写得是否正确?

我已经启动了 cron 作业,每五分钟进行一次备份,但没有显示输出。这是否意味着我的 cron tab 文件有误或服务未启动?我的 cron 作业成功运行,那么 ubuntu 中显示了什么信息?

答案1

在 Ubuntu 上,查看/var/log/syslogcron 默认记录其活动的位置。

grep CRON /var/log/syslog

如果您修改脚本以在成功/失败等情况下输出消息,则 cron 会将输出发送到运行该作业的帐户(例如 root)。您可以通过添加[email protected]指令定时任务文件。

答案2

解决 crontab 问题可以非常令人沮丧。我花了好几天的时间排除一些棘手的脚本故障,这些脚本手动运行正常,但每次通过 crontab 执行时都会失败。

其他提示都很好。我唯一能补充的是,您应该确保您的 crontab 会话可以访问所有必要的环境变量。例如,仅仅因为“/usr/local/foobar/bin”是 PATH 变量的一部分,并不意味着您的脚本会知道它何时通过 crontab 执行。因此,您可能希望在脚本中尽可能多地使用完整路径,或者在脚本开始时“获取”属性文件,以便您知道设置了正确的变量。

答案3

运行以下命令查看 cron 守护程序是否正在运行:

ps -e | grep cron

另外,看看

/var/log/cron

查看是否有任何条目。

答案4

我通常只是将输出重定向到某种日志文件:

30 * * * * cmd > /home/user/log/cmd.log

相关内容