linux基础——crontab计划任务

crontab 使用的限制数据有:
/etc/cron.allow: 将可以使用 crontab 的帐号写入其中,若不在这个文件内的使用者则不可使用 crontab;

/etc/cron.deny: 将不可以使用 crontab 的帐号写入其中,若未记录到这个文件当中的使用者,就可以使用 crontab 。

以优先顺序来说, /etc/cron.allow 比 /etc/cron.deny 要优先。

crontab语法参数:

[root@study ~]# crontab [-u username] [-l|-e|-r]
选项与参数,
-u :只有root才能进行这个任务,亦即指其他使用者创建/移除crontab工作调度1
-e :编辑crontab的工作内容
-1 :査阅crontab的工作内容
-r :移除所有的crontab的工作内容,若仅要移除一项,请用-e去编辑.

默认情况下,任何使用者只要不被列入 /etc/cron.deny 当中,那么他就可以直接下达“ crontab -e ”去编辑自己的例行性命令 了!整个过程就如同上面提到的,会进入 vi 的编辑画面, 然后以一个工作一行来编辑,编辑完毕之后输入“ :wq ”储存后离开 vi 就可 以了! 而每项工作 (每行) 的格式都是具有六个字段,这六个字段的意义为:

在这里插入图片描述
编辑过程中特殊字符和代表意义

特殊字符 代表意义
*(星号) 代表任何时刻都接受的意思
,(逗号) 代表分割时段,例如:0 3,6 * * * command,则表示3点与6点
-(减号) 代表时间范围内,例如:0 3-6 * * * command,则表示3,4,5,6都适用
/n(斜线) n代表数字,即‘每隔n单位时间间隔’的意思,例如:*/5 * * * * command 没间隔5分钟进行一次

配置例子:

1)在 12 月内, 每天的早上 6 点到 12 点中,每隔 20 分钟执行一次
/usr/bin/backup
*/20 6-12 * 12 * /usr/bin/backup
2) 每月每天的午夜 0 点 20 分, 2 点 20 分, 4 点 20 分….执行 echo “haha”
20 0-23/2 * * * echo "haha“
3)每周一23:59执行/usr/local/nginx/logbak.sh脚本:
59 23 * * 1 /usr/local/nginx/logbak.sh
4)每月1号23:59执行脚本:
59 23 1 * * /usr/local/nginx/logbak.sh

注:周与日月不可同时并存

发布了35 篇原创文章 · 获赞 3 · 访问量 6346

猜你喜欢

转载自blog.csdn.net/weixin_43815140/article/details/105342655