0%

定时任务

定时任务

at一次性执行定时任务

依赖于atd服务

1
service atd start
1
2
3
4
5
6
7
8
9
10
# at [选项] 时间
----------
-m at工作完成后,使用email通知执行at命令的用户
-c 工作号 显示该at工作的实际内容

时间格式
HH:MM
HH:MM YYYY-MM-DD
HH:MM[am|pm] [month] [date]
HH:MM[am|pm] + [minutes|hours|days|weeks]

crontab循环执行定时任务

由于at只能执行一次,所以使用的并不多,真正使用的多的是crontab执行定时任务

依赖于crond服务

1
service crond start

使用命令执行定时任务

1
2
3
4
5
6
7
#crontab [选项]

----------
-e 编辑crontab定时任务
-l 查询crontab任务
-r 删除任务
-u 用户名,默认是当前用户 修改/删除其他用户的任务

时间表达式

1
2
3
4
5
6
* * * * *
# 第一位为分钟
# 第二位为小时
# 第三位为天
# 第四位为月
# 第五位为周几

特殊符号

1
2
3
4
*    表示任意的时间,每一个位置的*代表的含义不同
, 代表不连续的时间,如'0 2,3,8 * * *'命令,表示每天的2点,3点,8点执行命令
- 代表连续的时间,如'0 2-4 * * *'命令,表示每天的2点到4点执行
*/n 代表每隔多久执行一次,如'*/10 * * * *'表示每隔10分钟执行一次

使用配置文件设置定时任务

在/etc/crontab配置文件中配置

格式为

1
分钟 小时 天 月 周 用户 命令

查看定时任务

可以使用命令

1
crontab -l -u 用户名

来查看

也可以去/var/spool/cron/crontabs目录下查看各用户的定时任务

欢迎关注我的其它发布渠道