zl程序教程

您现在的位置是:首页 >  Python

当前栏目

centos 8利用crontab设置定时任务,crontab每秒运行

2023-04-18 14:47:02 时间

centos 8利用crontab设置定时任务

一、安装

  1、查看是否安装 crontab:rpm -qa | grep crontab

2、如果未安装,分别执行:

  1. yum -y install vixie-cron
  2. yum -y install crontabs

  简单说明: vixie-cron 是 cron 的主程序; crontabs 是用来安装、卸装、或列举用来驱动 cron 守护进程的表格的程序。

二、启动和配置服务

  1. service crond start //启动
  2. service crond stop //关闭
  3. service crond restart //重启
  4. service crond reload //重新载入配置
  5. service crond staus //查看状态

也可以设置为开机启动

1systemctl enable crond

查看运行日志

tail -f /var/log/cron

查看 crontab -l

添加 crontab -e

三、crontab的基本定义

语法:

* * * * * command

说明:

(1)字段之间使用空格隔开

(2)字段的含义:在5个*当中,每一个*代表不同的含义,分别为分钟、小时、日、月、星期。分钟取1-59,如每

10分钟表示为*/10,小时取0-23,如每两个小时为*/2,日的范围为1-31,月的范围为1-12,星期的范围为0-6

(3)command表示需要执行的命令

星号(*):代表’‘每’'的意思,例如month字段如果是星号,则表示每月都执行该命令。

逗号(,):表示分隔时段的意思,例如,“1,3,5,7,9”。

中杠(-):表示一个时间范围,例如“2-6”表示“2,3,4,5,6”。

正斜线(/):可以用正斜线指定时间的间隔频率,例如“0-23/2”表示每两小时执行一次。同时正斜线可以和星号一起使用,例如*/10,如果用在minute字段,表示每十分钟执行一次。

四、查看crontab文件

crontab -l

四、创建一个crontab文件

1crontab -e

注意/var/spool/cron是用户任务,/etc/crontab是系统任务

think 定时任务 每分钟跑一次

*/1 * * * * php /home/www/tp6/think zhang

hink 定时任务 每秒跑一次

* * * * * /usr/wwwshell/ygkj/zhang.sh

zhang.sh文件内容,zhang.sh得777

#!/bin/bash
step=2
for((i=0;i<60;i=(i+step)));do
 php /home/www/tp6/think zhang
 sleep $step
done
exit 0
复制代码

可能有一个坑shell脚本 解决“/bin/bash^M: bad interpreter: No such file or directory”

my.oschina.net/owenzhang24…

定时任务添加完后 得查看日志是否运行成功

tail -f /var/log/cron

有问题就及时百度

//如果目录已经存在指定的文件(文件名为当前用户名),crontab -e则会编辑文件,否则将会以当前用户名创建文件。

五、举几个例子

  1. * * * * * command  //每分钟执行一次
  2. */5 * * * * command  //每五分钟执行一次
  3. 3,5 * * * * command  //1小时中的第3分钟和第5分钟执行
  4. 0 17 * * * command  //每天中的17:00执行一次
  5. 3 2-12/2 * * * command  //每天的2:03,4:03,6:03,8:03,10:03,12:03各执行一次
  6. 0 * * * * /etc/init.d/smb restart  //每小时执行一次/etc/init.d/smb重启
  7. 00 */1 * * * /home/test.py >> /home/test.log
  8. //每月每天每小时整点执行test.py脚本,并把原来输出到控制台的东西都输出到test.log文件中