Linux 任务计划

本文详细介绍了Linux系统中任务计划的两种主要方式:at和cron。包括它们的基本用法、常见选项及实例说明,如一次性任务、周期性任务的设置方法等。

Linux 的任务计划
某个时间点执行一次任务
at batch

周期性
cron

at time
ctrl+d提交

 


at -l 显示列表
at -d 删除

常用选项
-l 显示列表
-q queue
-d 删除指定作业
-c 查看具体的作业
-f path 从指定文件中读取任务

注意 作业的执行结果会邮件通知相关用户


batch
让系统自行选定空闲时间去执行指定任务

周期性任务计划
cron

相关程序包
cronie 主程序包
cronie-anacron cronie的补充程序员
crontabs 包含centos提供系统的维护任务


计划周期性任 需要提交给crond 由其来实现到点运行

系统crond任务 系统维护作业
编写/etc/crontab

用户cron任务
crontab 命令

-、系统任务
# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,f
ri,sat
# | | | | |
# * * * * * user-name command to be executed

例如每天晚上9点执行任务
0 21 * * * root echo 'hello world'

时间表示法
1、特定值
给定时间点有效范围内的值
2、* 给定时间点上有效范围内的任意值
相当于 每


3、离散取值
#,#,#

4、连续取值
#-#

5、在指定时间范围上 定义步长
/# #即为步长


1 */3 * * * 每三小时第一分钟执行一个任务


用户cron
crontab命令定义 每个用户都有专用的 /var/spool/cron/username

crontab
-l 列出所有任务
-e 编辑任务
-r 移除所有任务
-i 同-r一同使用 以交互方式选择性移除
-u user 以某个用户身份创建 仅 root用户


注意 任务结果以邮件通知相关用户
1、command > /dev/null
2、 command &> /dev/null

邮件服务
smtp 
pop3
imap4 互联网邮件传输协议

mailx 用户邮件代理

mailx [-BDdEFintv~] [-s subject] [-a attachment ] [-c cc-addr] [-b bcc-
addr] [-r from-addr] [-h hops] [-A account] [-S vari‐
able[=value]] to-addr . . .

邮件正文生成
1、直接给出 ctrl +d 提交内容
2、输入重定向
3、通过管道

mail 查看当前用户的邮件


对于cron 任务来讲 % 有特殊用途
需要转义 如果把% 放在单引号中则不需转义

思考
1、如果实现秒级任务?
2、如何实现7分钟执行一次任务

转载于:https://www.cnblogs.com/doubleone/p/8372493.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值