crontab命令学习

1.crontab命令是什么?
用来定时在后台执行任务的命令

2.crontab命令语法
分 时 日 月 星期 命令

分钟的取值范围是1~59
小时的取值范围是1~23(0表示子夜)
天数的取值范围是1~31
月份的取值范围是1~12
星期的取值范围是0~6(0表示星期天)

#注意命令必须是全路径
eg.20 5 * * * /home/diaocow/hello_cron.sh 

该命令表示每天5:20执行家目录下hell_cron.sh脚本

在表示时间的时候可以使用额外的符号:
-:该参数表示一个范围,譬如在日期那列1-5表示星期一到星期五
,:该参数列举可以取得值,譬如在月份那列1,5表示1月或者5月
*:该参数表示任意时间,没有限制
*/n:该参数表示每隔n分钟,譬如在分钟那列*/5表示每隔5分钟

好了,现在我们看一看几个例子,看你是否能够明白其表达的意思:
30 21* * * /apps/bin/cleanup.sh
#上面的例子表示每晚的 21:30运行/apps/bin目录下的cleanup.sh。
45 4 1,10,22 * * /apps/bin/backup.sh
#上面的例子表示每月 1、10、22日的4:45运行/apps/bin目录下的backup.sh。
10 1 * * 6,0 /bin/find -name "core" -exec rm {} \;
#上面的例子表示每周六、周日的 1:10运行一个find命令。
0,30 18-23 * * * /apps/bin/dbcheck.sh
#上面的例子表示在每天 18:00至23:00之间每隔30分钟运行/apps/bin目录下的dbcheck.sh。
0 23 * * 6 /apps/bin/qtrend.sh
#上面的例子表示每星期六的 11:00pm运行/apps/bin目录下的qtrend.sh。

在学习的过程中,我也写了简单的例子,测试了下crontab命令,效果如下:
crontab命令学习

3.crontab命令其他参数
-l:列出当前用户的定时任务
-e:编辑当前用户的定时任务
-r:删除当前用户的定时任务

我看下这几个命令的效果
crontab命令学习

关于-e,如果你第一次执行,它会让你选择编辑任务的编辑器,不过你可以通过设置环境变量来指定,例如:



你可能感兴趣的:(crontab)