shell cron时间表

用at命令在预设时间安排脚本执行非常好用,但如果你需要脚本在每天的同一时间运行或是 每周一次、每月一次呢?用不着再使用at不断提交作业了,你可以利用Linux系统的另一个功能。 Linux系统使用cron程序来安排要定期执行的作业。cron程序会在后台运行并检查一个特殊的表(被称作cron时间表),以获知已安排执行的作业。


cron时间表采用一种特别的格式来指定作业何时运行。其格式如下:

min hour dayofmonth month dayofweek command

cron时间表允许你用特定值、取值范围(比如1~5)或者是通配符(星号)来指定条目。例如,如果想在每天的10:15运行一个命令,可以用cron时间表条目:

15 10 * * * command

在dayofmonth、month以及dayofweek字段中使用了通配符,表明cron会在每个月每天的10:15
执行该命令。要指定在每周一4:15 PM运行的命令,可以用下面的条目:

15 16 * * 1 command

可以用三字符的文本值(mon、tue、wed、thu、fri、sat、sun)或数值(0为周日,6为周六) 来指定dayofweek表项。
这里还有另外一个例子:在每个月的第一天中午12点执行命令。可以用下面的格式:

00 12 1 * * command

在每个月的最后一天执行的命令

00 12 * * * if [`date +%d -d tomorrow` = 01 ] ; then ; command

列出已有的cron时间表,可以用-l选项。

$ crontab -l
no crontab for rich 
$

新建cron时间表,可以用-e选项。

$ crontab -e

原文地址:https://www.cnblogs.com/sea-stream/p/14066605.html