首页  >  文章  >  运维  >  Linux之crontab定时执行脚本怎么写

Linux之crontab定时执行脚本怎么写

PHPz
PHPz转载
2023-06-03 10:13:201875浏览

    crontab定时执行脚本

    不废话,直接上你要的: 

    Linux之crontab定时执行脚本怎么写

    如框框内所示,该命令表示每十分钟执行一次该目录下的脚本文件,即 /home/alan/test1.sh

    Ok,现在具体讲一下命令为何这么写。

    一、什么是crond,什么又是crontab

    首先crond是linux系统中用来定期执行命令的一种服务当编写完命令后,系统便会启动crond任务调度命令,crond会每分钟定期检查是否要执行的工作,如果要执行的工作便会自动执行该工作。crond服务就像闹钟一样。

    crontab是用于设置周期性被执行的指令,该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取与执行。

    说白了,就是crond服务需要通过crontab去实现。

    crontab命令格式

    选项 说明
    -u user 用于设定某个用户的定时任务
    file file为命令文件名,表示将file作为crontab的任务列表文件并载入crontab
    -e 编辑某个用户的定时任务,如不指定用户则表示当前用户
    -l 显示某个用户的定时任务,如不指定用户则表示当前用户
    -r 删除某个用户的定时任务,如不指定用户则表示当前用户
    -i 在除某个用户的定时任务时给确认提示

    二、安装crond

    1.首先检查是否安装过crond

    yum list installed | grep "crond"

    2.安装crond (centos 7)

    • systemctl status crond:查看 crond 服务状态。

    • systemctl start crond:启动 crond 服务。

    • systemctl stop crond:关闭 crond 服务。

    • systemctl restart crond:重启 crond 服务。

    • systemctl reload crond:重新载入 crond 服务。

    如果是centos 7 以下版本,则写成 service crond status/start/....即可。

    三、如何使用crontab

    如图所示:

    Linux之crontab定时执行脚本怎么写

    除过#注释符,从左到右总共有五个*号,分别代表分钟,小时,几号,月份,星期几。

    在后面跟的是执行任务的用户,后面跟的是执行的命令或者脚本文件(脚本文件需要带上绝对路径目录哦,比如我的就是/home/alan/test1.sh

    星号具体含义及范围(从左到右):

    星号 含义 时间范围
    * 一小时当中的第几分钟(minute) 0-59
    * 一天当中的第几小时(hour) 0-23
    * 一个月当中的第几天(day) 1-31
    * 一年当中的第几个月(month) 1-12
    * 一周当中的星期几(week) 0-7(0和7都代表星期日)

    除*外还有些其他符号有特殊含义哦

    比如:

    符号 含义 说明
    *(星号) 表示任意时间 * 6 * * * :表示每天6点的每分钟都执行一次命令
    ,(逗号) 用逗号隔开表示该字段的取值 10 8,9,10,* * * :表示在每天8:10,9:10,10:10都执行一遍命令
    -(中杆) 表示两个整数之间的取值范围 * 6 * * 1-2 :表示每周一至周二的6点执行命令
    /(正斜杠) 表示间隔多久执行一次 */10 * * * * : 表示每隔十分钟就执行一次命令

    以上是Linux之crontab定时执行脚本怎么写的详细内容。更多信息请关注PHP中文网其他相关文章!

    声明:
    本文转载于:yisu.com。如有侵权,请联系admin@php.cn删除