如何在 Linux 中每 10、20 和 30 秒运行一次 Cron 作业
摘要: cron 作业调度程序不支持调度作业以秒为间隔运行。在本文中,我们将向您展示一个简单的技巧,帮助您在 Linux 上每 30 秒或 x 秒运行一次 cron 作业。
您是计划 cron 作业的新手,并且希望每 30 秒运行一次作业吗?不幸的是,cron 不允许这样做。您无法安排 cron 作业每秒运行 x。Cron只支持至少60秒(即1分钟)的时间间隔。要每 30 秒运行一次 cron 作业,您需要使用下面解释的技巧。
在本指南中,我们还将介绍每隔 x 秒运行一次任务或命令或脚本的其他几个示例。但让我们首先讨论如何在 Linux 中每 30 秒运行一次 cron 作业。
在 Linux 中每 30 秒运行一次 Cron 作业
要执行上述任务,请在 crontab 中创建两个条目。第一个任务将在每分钟(60 秒)后执行 date 命令,然后第二个脚本将应用 sleep 命令来延迟指定的时间(在本例中为 30 秒)并再次调用 date 命令。
您需要将以下条目添加到 crontab(cron 表),并使用以下 crontab 命令打开它进行编辑(-e标志启用编辑):
# crontab -e
将以下 cron 语句添加到文件中。
* * * * * 日期>> /tmp/date.log
* * * * * 睡眠 30;日期 >> / tmp / 日期 . 日志
现在,如果您查看 /tmp/date.log 文件的内容,您应该会看到 date 命令每 30 秒执行一次。我们可以使用cat命令查看该文件,并检查时间栏来确认,如下:
$ cat / tmp / date . log
您还可以实时查看文件传输情况。为此,请使用 tail 命令和-f标志。
$ tail -f / tmp / 日期 . 日志
在 Linux 中每 10 秒运行一次 Cron 作业
让我们看看其他例子。这展示了如何每 10 秒运行一次 cron 作业。诀窍是只使用 sleep 命令的秒数:
* * * * * 日期>> /tmp/date.log
* * * * * 睡眠 10;日期 >> / tmp / 日期 . 日志
* * * * * 睡眠 20;日期 >> / tmp / 日期 . 日志
* * * * * 睡眠 30;日期 >> / tmp / 日期 . 日志
* * * * * 睡眠 40;日期 >> / tmp / 日期 . 日志
* * * * * 睡眠 50;日期 >> / tmp / 日期 . 日志
同样,如果我们查看 /tmp/date.log 文件,它应该根据上面的 crontab 条目每 10 秒更新一次:
$ tail -f / tmp / 日期 . 日志
这是每 15 秒执行一次 date 命令的另一个示例:
* * * * * 日期>> /tmp/date.log
* * * * * 睡觉 15; 日期 >> / tmp / 日期 . 日志
* * * * * 睡眠 30;日期 >> / tmp / 日期 . 日志
* * * * * 睡眠 45; 日期 >> / tmp / 日期 . 日志
最后,要每 20 秒运行一次 cron 作业,您可能看起来像这样:
* * * * * 日期>> /tmp/date.log
* * * * * 睡眠 20;日期 >> / tmp / 日期 . 日志
* * * * * 睡眠 40;日期 >> / tmp / 日期 . 日志
另外,这里还有更多文章供您学习使用 cron 进行任务调度:
的
如何在 Linux 上创建和管理 Cron 作业
Cron 与 Anacron:如何在 Linux 上使用 Anacron 安排任务
的
现在你知道了!我们向您展示在 Linux 中每 x 秒运行一次 cron 作业的不同示例。阅读 cron 手册页(通过man cron运行man crontab命令)以获取更多信息。
如果您知道任何有用的 cron 命令提示或技巧,请在下面的评论中分享。