1

我想在我的 debian 系统中创建一个 cron 任务。

我这样做

sudo crontab -e

并添加一行

10 17 * * * /home/userdir/cron/meiwei-slide-shoot.sh

我在 17:00 执行此操作,并希望脚本在 17:10 运行。但它不起作用。

我已经尝试过脚本。它运作良好。但为什么不由 cron 运行呢?

4

2 回答 2

1

我会

  1. 检查这些文件权限以确保脚本可以由 cron 用户执行
  2. 将 stdout / stderr 记录到文件中以捕获任何错误,例如script.sh >/tmp/cron.log 2>&1

cron进程在非常精简的环境中运行,您可能遇到了执行权限问题,或者您依赖的环境变量不可用。对于它的价值,我每次设置cron工作时总是要经历几次迭代。

这个 AskUbuntu 问题还包含一些有用的信息。

于 2012-08-17T09:19:27.453 回答
1

您是否检查过该文件是否可执行?

您是否添加了如下行:

touch /tmp/proof_that_i_am_running

到脚本顶部以检查它是否正在启动,并且由于其他原因而退出,例如不完整的环境设置?

您是否收到cron包含输出/错误的邮件?

您是否检查了cron假脱机目录(例如/var/spool/cron/crontabs)以确保已创建条目?

您可能会错过很多事情,这只是常见的事情,但这是一个好的开始。


一个好的测试是添加:

* * * * * date >>/tmp/crondates 2>&1

到您crontab并观看以查看该文件是否出现。

于 2012-08-17T09:20:07.357 回答