Linux系统管理-定时任务

本文详细介绍了Linux系统中的crond服务管理及crontab定时任务的使用方法。包括crond服务的启动与自启动设置、crontab命令的格式与选项、定时任务的书写格式及特殊符号含义,并通过多个实例演示如何设置定时任务。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. crond服务管理

crond服务的启动命令:

service crond restart

crond服务开机自启动:

chkconfig crond on

说明:crond服务默认是已经启动和开机自启动的,一般不需要手动设置。

chkconfig | grep crond
查看crond定时任务服务是否为开机自启动

2. crontab定时任务命令

命令格式:crontab [选项]

选项:

-e  编辑定时任务
-l  查询已经设置好的定时任务
-r  删除当前用户所有的定时任务

示例:

crontab -e
进入crontab定时任务编辑界面。默认会用vi编辑器打开你的定时任务。

定时任务的书写格式如下:

* * * * * 命令

说明:

  • 第一个*:一个小时中的第几分钟(0-59)
  • 第二个*:一天当中的第几个小时(0-23)
  • 第三个*:一个月当中的第几天(1-31)
  • 第四个*:一年当中的第几个月(1-12)
  • 第五个*:一周当中的星期几(0-7,0和7都代表星期日)

*代表任意时间,指定的数值代表具体的时间。

特殊符号含义
*代表任何时间。比如,第一个*就代表一小时中每分钟执行一次。
,代表不连续的时间范围。
-代表连续的时间范围。
*/n代表每隔多久执行一次。/10 * * * 命令,代表每隔10分钟执行一次。

举例说明:

* * * * * 命令
每分钟执行一次命令。

45 22 * * * 命令      
在每天的22点45分执行该命令。

0 17 * * 1 命令
在每周一的17点0分执行该命令。

0 5 1,15 * * 命令     
在每月1号和15号的凌晨5点0分执行该命令。

40 4 * * 1-5 命令     
在每周一到周五的凌晨4点40分执行该命令。

*/10 * * * * 命令     
每隔10分钟执行一次命令。

10 * * * * 命令
在每个小时的第10分钟执行一次命令。(每天执行24次)

*/10 4 * * * 命令     
在每天的凌晨4点,每隔10分钟执行一次命令。(每天执行6次)

0 0 1,15 * 1 命令     
在每月1号和15号、每周一的0点0分都会执行该命令。(合集)
注意:几号和星期几最好不好同时出现,因为他们定义的都是天。

示例:

*/3 * * * * /bin/echo "333" >> /tmp/test    
每隔三分钟,将字符串333追加到/tmp/test文件中。  
也可这样写 
*/3 * * * * echo "333" >> /tmp/test

5 5 * * 2 /sbin/shutdown -r now 
每周二的凌晨5点5分,重启计算机。

* * * * * /root/sh/autobak.sh
每分钟执行一次autobak.sh脚本文件。

举例:创建一个定时备份配置文件目录/etc的定时任务。

首先,需要写一个备份配置文件目录的脚本文件

vi etcbak.sh

内如如下:

#!/bin/bash
date=$(date +\%y\%m\%d)
size=$(du -sh /etc)

echo "Date: $date" > /tmp/bakinfo.txt
echo "Data size: $size" >> /tmp/bakinfo.txt

cd /tmp
tar -zcf etc_bak_$date.tar.gz /etc /tmp/bakinfo.txt &>/dev/null
rm -rf /tmp/bakinfo.txt

注意:备份文件名多以日期命名。而日期命令date +\%y\%m\%d和date +%y%m%d在命令行中都可以格式化输出日期,但是在定时任务crontab中,%有特殊含义,估这里必须转义

保存退出后,给该脚本赋予执行权限:

chmod 755 etcbak.sh

最后,写入crontab定时任务:

crontab -e 
30 3 * * * /root/sh/etcbak.sh 
在每天的凌晨330分,执行备份。

说明:crontab定时任务能够设置的最小时间是分钟。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值