【问题标题】:crontab doesnt work in linuxcrontab 在 linux 中不起作用
【发布时间】:2011-12-19 11:17:46
【问题描述】:

我的 Linux 版本是 red hat enterprise linux server release 5.3 tikanga

我有如下计划 crontab

1 * * * * /usr/testjob.sh  2>&1 >> /usr/result.txt

crontab 作业未按预定时间运行...

请建议..

【问题讨论】:

  • 要在特定时间(而不是定期)安排命令,请查看at 命令。要每分钟运行一次,请使用“* * * * *”。
  • 重定向顺序错误,请使用>> /usr/result.txt 2>&1
  • 你把那行放在哪个 crontab 文件中?使用什么命令?
  • @A.H.我正在使用命令:cronntab -e
  • 只要脚本文件是可执行的并且用户有写入/usr/result.txt的权限,它应该可以工作。

标签: linux crontab sh


【解决方案1】:

先试试这个。

* * * * * /usr/testjob.sh

然后您可能每分钟收到一封邮件。检查错误输出。 有时,这可能是由于您的默认 shell 只是 sh 而不是 bash。

所以,可能不支持“>>”。

当你想写入时,你应该检查你是否有 /usr 权限。

【讨论】:

    【解决方案2】:

    只是提一下并确保

    注意:每个 cron 表条目必须有一个尾随换行符 用于识别 cron 表条目。

    【讨论】:

      【解决方案3】:

      正如 +Shawn Chin 所说,如果您只想运行一次命令,那么 at 命令就是您的朋友。

      如果你想重复运行你的命令,那么使用 cron 框架是对的。使用以下命令可以获得解释 crontab 字段的手册页:

      $ man -s 5 crontab
      

      您似乎位于印度时区 (IST)。您可能必须在 crontab 中指定它。例如,使用“crontab -e”命令(保存和退出,键入“ESC-wq”,因为编辑器默认为 VI):

      #
      CRON_TZ=IST
      # run at 06:33 (am), every day
      33 06 * * *       /usr/testjob.sh  >> /usr/result.txt 2>&1
      

      请注意,'2>&1' 应该放在 '>> /usr/result.txt' 之后,而不是之前。

      【讨论】:

      • 非常好,欢迎加入。对于 crontab 的新用户,我用来记住正确顺序的 nmemonic (sp?) 设备(如您的示例所示)的另一点是,从左侧开始,向右移动,您在每个中使用更大的时间值在前 4 列中,min、hr、day-of-mon、mon,其中 5 col 是星期几作为数字,请查阅您的手册页以了解 Sun = 0 还是 7?祝大家好运。
      猜你喜欢
      • 2018-05-10
      • 1970-01-01
      • 2013-11-12
      • 2018-12-21
      • 2017-10-03
      • 2014-06-02
      • 2011-07-23
      • 2015-01-23
      • 2017-04-14
      相关资源
      最近更新 更多