一、安装crontab
一般Linux都会有,如果没有自己手动安装
yum install vixie-cron
yum install crontabs
查看crontab的状态:service crond status
设置开机自启:ntsysv
空格可以设置选中或取消,如果想退出点击tab键
二、使用
语法:crontab [-e [UserName]|-l [UserName]|-r [UserName]|-v [UserName]|File ]
说明:crontab 是用来让使用者在固定时间或固定间隔执行程序之用,换句话说,也就是类似使用者的时程表。
-u user 是指设定指定 user 的时程表,这个前提是你必须要有其权限(比如说是 root)才能够指定他人的时程表。如果不使用 -u user 的话,就是表示设定自己的时程表。
参数:
-e [UserName]: 执行文字编辑器来设定时程表,内定的文字编辑器是 VI,如果你想用别的文字编辑器,则请先设定 VISUAL 环境变数来指定使用那个文字编辑器(比如说 setenv VISUAL joe)
-r [UserName]: 删除目前的时程表
-l [UserName]: 列出目前的时程表
-v [UserName]:列出用户cron作业的状态
crontab的基本格式
* * * * * command
分 时 日 月 周 命令
第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令
比如我的脚本是 /home/pibigstar/cleanroom.py
执行环境为 /usr/bin/python
每天9点运行一次,则操作步骤为:
1、通过命令行进入crontab的任务编辑: crontab -e
2、新增语句为: 0 9 * * * /usr/bin/python /home/pibigstar/cleanroom.py
如果想将输出的信息打印到文件里面则在语句后面跟上文件地址:
0 9 * * * /usr/bin/python /home/pibigstar/cleanroom.py >> /root/info.log
- 写完后重启crond 服务: service crond restart
- 查看目前的任务: crontab -l
- 查看执行日志: cat /var/log/cron
- 动态查看日志:tail -f log
顺便附上常用的周期格式
每五分钟执行 */5 * * * *
每小时执行 0 * * * *
每天执行 0 0 * * *
每周执行 0 0 * * 0
每月执行 0 0 1 * *
每年执行 0 0 1 1 *