Linux下使用crontab来执行定时任务计划

时间:2022-06-30 08:08:05

安装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这个文件中

注意检查一下crontab是否启动,/etc/init.d/crond   start


参数:
      -l    列出用户的定时器设置
      -e    编辑用户的定时器设置
      -r    删除用户的定时器设置
      -u<用户名>   指定要设置定时器的用户名称



如果遇到使用crontab -ecrontab -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    现在就可以用这个命令来编辑配置文件了