Linux下使用crontab来执行定时任务计划
安装crontab:
[root@CentOS ~]# yum install vixie-cron
查看crontab服务是否已设置为开机启动,执行命令:ntsysv
加入开机自动启动:
chkconfig --level 2345 crond on
参 数:
-e 编辑该用户的计时器设置。
-l 列出该用户的计时器设置。
-r 删除该用户的计时器设置。
执行定时任务
语法: crontab [-u 用户名] [设置文件]
crontab [-u 用户名] [-elr]
说明:cron是一个守护程序,它提供定时器的功能,让用户在特定的时间得以执行默认的指令或程序.只要用户会编辑定时器的设置文件,就可以使用定时器的功能. 定时器文件格式:
分 时 日 月 周 [用户] command
0 4 * * * root updatedb #每天早上4:00以root用户身份执行updatedb命令
*/5 * * * * root updatedb #每五分制执行一次
*/1 * * * * root updatedb #每一分钟执行一次
其中用户root可以忽略不填,如:
1-59 * * * * echo "hello">>/root/hello.txt #每分钟写个hello到/root/hello.txt这个文件中
-l 列出用户的定时器设置
-e 编辑用户的定时器设置
-r 删除用户的定时器设置
-u<用户名> 指定要设置定时器的用户名称
如果遇到使用crontab -e或crontab -l的时候提示:no crontab for root
说明还没有为root这个账号提供crontab
可以自己创建一个配置文件来添加上去
1. #vi hello-conf
1-59 * * * * echo "hello">/root/hello.txt
2. #crontab -u root hello-conf
3. #crontab -l 应该就可以列出任务列表了。
4. #crontab -e 现在就可以用这个命令来编辑配置文件了