当我放
* * * * * /var/www/script.sh
脚本每分钟执行一次,但如果我把
* */2 * * * /var/www/script.sh
相反,脚本根本不执行
答案1
如果你想让它运行每一个小时,则需要在分钟字段中输入数字。例如,要在一刻钟后运行,请使用:
15 * * * * /var/www/script.sh
从man -i 5 crontab
:
Commands are executed by cron(8) when the minute, hour, and month of year fields match the current
time, and when at least one of the two day fields (day of month, or day of week) match the current
time (see ``Note'' below). 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''.
Ranges of numbers are allowed. Ranges are two numbers separated with a hyphen. The specified
range is inclusive. For example, 8-11 for an ``hours'' entry specifies execution at hours 8, 9, 10
and 11.
Lists are allowed. A list is a set of numbers (or ranges) separated by commas. Examples:
``1,2,5,9'', ``0-4,8-12''.
Step values can be used in conjunction with ranges. Following a range with ``/<number>'' specifies
skips of the number's value through the range. For example, ``0-23/2'' can be used in the hours
field to specify command execution every other hour (the alternative in the V7 standard is
``0,2,4,6,8,10,12,14,16,18,20,22''). Steps are also permitted after an asterisk, so if you want to
say ``every two hours'', just use ``*/2''.
答案2
您应该将“*”改为数字。因此您的第二个星号应该是 2,因此:
* 2 * * * /var/www/script.sh
并不是
* */2 * * * /var/www/script.sh
供将来参考 第一个星号用于指定运行的分钟(0-59) 第二个星号用于指定运行的小时(0-23) 第三个星号用于指定运行的月份日期(1-31) 第四个星号用于指定运行的月份(1-12) 第五个星号用于指定星期几(其中星期日等于