![Crontab 语法:使用“*”表示分钟值](https://linux22.com/image/16318/Crontab%20%E8%AF%AD%E6%B3%95%EF%BC%9A%E4%BD%BF%E7%94%A8%E2%80%9C*%E2%80%9D%E8%A1%A8%E7%A4%BA%E5%88%86%E9%92%9F%E5%80%BC.png)
如果我使用“*”作为分钟值会发生什么?该命令是否每分钟运行一次?例如:
* 4 * * 0 <command>
答案1
是的,在您的示例中,该命令将在每周日 0400 点的每分钟运行。
顺便说一句,如果您确实需要每分钟运行一些东西,那么您可能正在监视某些东西的变化;通常有更好的方法来做到这一点。例如,在 Linux 上,可以inotify
根据文件系统事件唤醒程序,以及ip monitor
监视网络状态变化。
答案2
是的,这将在周日第五个小时(0400 到 0459)的每分钟运行。可能的目的是在此期间运行一次。除非需要按小时运行,否则请选择 1 到 59 之间的随机值,并替换分钟值。
如果您有一堆需要在特定时间段内运行的程序,您可以通过使用您希望任务运行的时间中的随机分钟来限制负载峰值。为每个 crontab 条目使用不同的值。
答案3
是的,这个作业每分钟都会运行。
以下是一些相关部分人5 crontab:
cron(8) examines cron entries once every minute. The time and date fields are:
field allowed values
----- --------------
minute 0-59
hour 0-23
day of month 1-31
month 1-12 (or names, see below)
day of week 0-7 (0 or 7 is Sun, or use names)
A field may be an asterisk (*), which always stands for ``first-last''.
联机帮助页显示,如果在分钟字段中使用星号 (*),则相当于使用“0-59”(“第一个-最后一个”),并且该作业将在一小时内的每分钟运行。