【发布时间】:2014-08-19 13:23:56
【问题描述】:
我是 LINUX 新手。我对 cron 的工作原理有一个清晰的概念,但突然间我产生了一个小小的疑问。假设如果我想在 3 月 5 日凌晨 5 点 30 分执行ls 命令,那么我的cron 命令将是30 05 05 03 ?? ls。
我的简单问题是?? 位置会出现什么条目。假设我在那个位置输入 01 而不是 ?? ,会发生什么。如果这是一个简单的问题,请原谅,请帮我解决。
【问题讨论】:
我是 LINUX 新手。我对 cron 的工作原理有一个清晰的概念,但突然间我产生了一个小小的疑问。假设如果我想在 3 月 5 日凌晨 5 点 30 分执行ls 命令,那么我的cron 命令将是30 05 05 03 ?? ls。
我的简单问题是?? 位置会出现什么条目。假设我在那个位置输入 01 而不是 ?? ,会发生什么。如果这是一个简单的问题,请原谅,请帮我解决。
【问题讨论】:
你的情况
30 05 05 03 * command to be executed
- - - - -
| | | | |
| | | | +----- day of week (0 - 6) (Sunday=0)
| | | +------- month (1 - 12)
| | +--------- day of month (1 - 31)
| +----------- hour (0 - 23)
+------------- min (0 - 59)
?? 表示您不介意星期几,因为您已经说明了确切的日期。如果您放置01,它仍然会运行,但它是多余的。
【讨论】:
*,而不是??。除非您的 cron 版本与大多数其他版本不同 :-)
字符* 表示 crontab 文件中的“任何值”,因此您可以使用它。
如果您使用1,您的作业只会在您已经指定的条件下执行并且这是星期一。
【讨论】:
该条目适用于您希望它运行的星期几。如果您将01 放在那里,那么它将仅在 3 月 5 日(恰好是星期一)的 5:30 运行。如果您想指定“一周中的任何一天”,请使用*。
【讨论】:
您将输入 *,这意味着“这里一切正常”。该字段是星期几,您不在乎是星期一还是星期二等。如果您输入01,您将只在该日期是星期一的年份运行。
【讨论】: