Linux,服务器定时任务-Crontab,安装与使用,日常运维

一、安装

使用yum进行安装crond,执行以下命令:

 

编辑搜图编辑搜图

 

 

ubuntu、debian系统,请执行以下命令:

编辑搜图编辑搜图

二、crond进程查看、启动、关闭、重启

  • service crondstart //启动服务

  • service crondstop //关闭服务

  • service crondrestart //重启服务

  • service crondreload //重新载入配置

  • service crondstatus //查看crontab服务状态

三、cron脚本编辑

执行"crontab -e" 命令,进入编辑页面

 

设置好后保存退出即可。(Linux文档编辑请参考整理几个Linux基础命令,互相学习一下,vi 命令用法)

注:当系统不存在crontab文件时,输入此命令即为创建,已存在文件即为编辑。

四、查看当前所有定时任务

运行"crontab -l" 命令查看

五、删除当前所有定时任务

运行"crontab -r"命令

 

注:此命令请谨慎使用,把定时任务配置文件,备份后再执行。

六、crontab格式说明

例子:1 2 3 4 5 /path/to/command或者:1 2 3 4 5 /root/ntp_sync.sh

前5个数字分别对应:

编辑搜图编辑搜图

最后接的是要执行的命令,可以是系统命令也可以是脚本的完整路径。

七、crontab命令操作符

星号(*):通配符匹配,代表所有可能的值。例如:在小时字段中,一个星号等同于每个小时;在月份字段中,一个星号则等同于每月。

逗号(,):在一个字段上指定多个值。例如:“1,2,5,7,8,9”

中杠(-):指定一个值的范围。例如:“2-6”表示“2,3,4,5,6”

正斜线(/):指定时间的间隔频率。例如:“0-23/2”表示每两小时执行一次

八、crontab命令实例

 

# 每2个小时执行一次脚本 #0 */2 * * * /test/test.sh

# 每天凌晨2点执行操作 #0 2 * * * /test/test.sh

# 每个工作日的周五上午9点执行操作 #0 9 * * 1-5 /test/test.sh或0 9 * * 1,2,3,4,5 /test/test.sh

# 每周六、周日的下午6:30执行操作 #30 18 * * 0,6 /test/test.sh

# 每天2200.pm-24:00.pm之间每个30min执行操作 #0,30 22-24 * * * /test/test.sh

注:每个和每隔需要区分,每个用逗号“,”,每隔用斜杠“/”。我是经常用错。

rontab的特殊字符

linux中提供了8个特殊字符串用来替代crontab命令的前五个字段,这样不但可以节省时间,还可以提高可读性。

编辑搜图编辑搜图

示例:

# 每小时运行一次 #

@hourly /test/test.sh

输出重定向

当执行定时任务出现错误时,需要将信息输出,如果没有配置重定向,则默认将信息存储到相应用户下面的文件中/var/log/mail/${user},不方便查找。因此,需要配置重定向将不同的执行脚本输出到不同的日志中。

示例:

0 */2 * * * /test/test.sh >> /home/work/log/test.log 2>&1

其中>>表示将输出追加到test.log文件中,2>&1表示将标准错误重定向到标准输出。

posted @ 2022-11-07 09:47  铭刻记忆  阅读(3086)  评论(0)    收藏  举报