如何每天仅在特定时间一次在cron作业中运行Shell脚本

问题描述

我只是想每天PST上午9点运行.sh文件。我只是在Linux的crontab中创建了调度程序,如下所示

* 9 * * * /home/arrchannaMohan/PaymentsAlert.sh

PaymentsAlert.sh

curl -k http://localhost:8080/emailTrigger

以上curl命令每天太平洋标准时间上午9点触发电子邮件,其中包含一些业务内容,并且每天应运行一次。因此,太平洋标准时间每天上午9点都应该调用一次此shell脚本。

但是上述cron配置将在太平洋标准时间上午9点以后每隔1分钟开始启动电子邮件警报,并一直持续到我们手动将其终止。

是否可以创建每天运行一次的cron配置(预期在太平洋标准时间上午9点运行)。

解决方法

您列出的crontab意味着;

* 9 * * *
> At every minute past hour 9

您需要0 9 * * *,因为您只想在我们整个系统上运行,因此需要0分钟。

0 9 * * *
> At 09:00

使用类似crontab.guru的图形进行可视化。