crontab 介绍
在linux系统中,周期执行的任务一般由cron这个守护进程来处理。那该如何使用呢?下边简单介绍一下
crontab 服务
service crond start //启动服务
service crond stop //关闭服务
service crond restart // 重启服务
service crond reload // 重新载入配置
service crond status // 查看服务状态
说明: 定时任务修改之后,并不会立刻生效,需要手动让cron进程重新加载定时任务。
主要使用两个命令在使配置生效,不同系统,命令可能不一样
service crond reload
或者
systemctl reload crond 。
还有一点,需要注意的是,如果修改是全局定时任务文件的haul,在/etc/crontab 或者 /etc/cron.d/中的文件,则重新加载crond进程方式是无法加载配置的。不过可以用使用如下命令执行:sudo cat /var/log/syslog | grep CRON, 然后会打印出一些信息,如果打印出的是如下信息,那么则是更新配置成功。
CRON[1234]:(ROOT) CMD (/PATH/TO/COMMAND)
配置文件存放在哪的呢
一般是放在/var/spool/cron 下边,你会看到使用基于用户名创建的文件,进入这个文件,你会看到这个用户所创建的所有的定时任务脚本。
具体的脚本内容,就不给你们看了,你们可以自己查看一下。
使用方法
查看已创建的定时任务: crontab -l
编辑定时任务: crontab -e
删除定时任务: crontab -r 这个命令慎用。
有的时候,你创建完定时任务之后,查看是否已经添加成功,可用如下命令验证
crontab -l -u root
如果能显示这条执行定时任务的脚本,则是添加成功的。
定时规则
基本格式
* * * * * command
分 时 日 月 周 命令
说明:
第1列 表示分钟 1~59 每分钟*/1表示
第2列 表示小时 1~23 (0 表示 0点)
第3列 表示日期 1~31
第4列 表示月份 1~12
第5列 表示星期0~6 (0表示星期天)
第6列 要运行的命令
举例
- 每天2点执行任务
0 2 * * * sh 123.sh
说明 0 表示分钟数是0
1 表示小时数是1,
星号表示每天都执行
command 表示要执行的脚本
注意:在crontab 使用的时间 是基于系统的本地时区的时间。
- 每一分钟执行
*/1 * * * sh 123.sh
- 每3个小时
0 */3 * * * sh 123.sh
- 其它用法,在看吧,用到哪,看到哪