Answers:
从 的crontab(5) :
Note: The day of a command's execution can be specified by two fields --
day of month, and day of week. If both fields are restricted (ie,
aren't *), the command will be run when either field matches the cur-
rent time.
这意味着你的 crontab中 输入将无法按预期工作。该命令将每天从每月的第1天到第7天以及每周三运行。
由于以上原因, cron的 单独无法决定是否是本月的第一个星期三。但是,您可以使用检查一个条件 cron的 并检查另一个 测试 和 日期 :
00 19 1-7 * * [ $(/usr/bin/date +\%w) = 3 ] && /sbin/init 0
这个怎么运作:
该命令将在每月的第1天至第7天每天执行。
$(/usr/bin/date +\%w)
返回工作日。
[ ... = 3 ] &&
检查工作日是否是星期三(3)。
如果是, /sbin/init 0
被执行。
请注意,您必须转义百分号,因为它是特殊的 cron的 。