ChatGPT解决这个技术问题 Extra ChatGPT

如何每 2 小时运行一次 cron 作业? [关闭]

关闭。此问题不符合 Stack Overflow 准则。它目前不接受答案。我们不允许在 Stack Overflow 上提出有关通用计算硬件和软件的问题。您可以编辑问题,使其成为 Stack Overflow 的主题。 3个月前关闭。改进这个问题

如何编写每 2 小时运行一次我的 /home/username/test.sh 脚本的 Crontab?


M
Mark Amery

做就是了:

0 */2 * * *  /home/username/test.sh 

开头的 0 表示在第 0 分钟运行。 (如果它是 *,则脚本将在每两小时内每分钟运行一次。)

不要忘记,您可以检查 syslog 以查看它是否真的运行过!


@ernest-conill 你怎么知道?修订历史不包含包含不同代码的版本:stackoverflow.com/posts/6423532/revisions
J
James Anderson

该行应为:

0 0-23/2 * * * /home/username/test.sh

或者

0 0,2,4,6,8,10,12,14,16,18,20,22 * * * /home/username/test.sh

“0-23/2”——在 0 到 23 小时之间,每 2 小时运行一次。
0-23/2 比 */2 好很多
@Kad 为什么会这样?
奇怪的时间呢?我可以加+1吗
如果您的 cron 支持它,0-23/2 是每个偶数小时,1-23/2 是每个奇数小时,但我还是更喜欢 */2
g
g10guang
0 */2 * * *

答案来自 https://crontab.guru/every-2-hours。挺有趣的。


B
Bibin Joseph

0 */1 * * * “每小时第 0 分钟。”

*/2 * * * “在每 2 小时的第 0 分钟。”

这是为每个小时设置 cronjobs 的正确方法。


m
mnille

进入 crontab :

crontab -e

将其写入文件:

0 */2 * * * python/php/java yourfilepath

示例:0 */2 * * * python ec2-user/home/demo.py

并确保在 crontab 文件中的最后一个 cron 作业之后保留一个空行


u
user15058224

首先执行 crontab -l 以查看您现有的 crontab 和作业,如果您不执行任何操作,然后执行 crontab -e

检查你的编辑器可能是 VI 或 nano 或类似的东西.. 通过“i”进入插入模式,命令应该像(cron 表达式)[空格](来自家的程序执行地址)[空格](来自家的脚本地址)

示例(0 /2 * * * /conda///bin/python3 ///USERNAME/TEST_PYTHON_SCRIPT.py >> execution_log.txt)

execution_log.txt 将包含您的脚本的执行日志。

正确放置命令后,通过将文件保存为 nano -> ctrl + x for vi -> :wq! 退出编辑器!

使用一些电子邮件/打印声明检查您的脚本。


s
sci9

如果需要一个简单的 cron 计划生成器,这个可以做得很好:https://crontab.guru/#_/2___*

* */2 * * *