Linux - crond任务调度、at定时任务

1 crontab 进行-定时任务的设置

1)概述:

任务调度:是指系统在某个时间执行的特定的命令或程序。

任务调度分类:

  • 系统工作:有些重要的工作必须周而复始地执行。如病毒扫描等
  • 个别用户工作:个别用户可能希望执行某些程序,比如对mysql数据库的备份

2)基本语法:

crontab [选项]
//常用选项有:
	-e				//编辑crontab定时任务
	-l				//查询crontab任务
	-r				//删除当前用户所有的crontab任务

重启任务调度指令:

service crond restart

案例:每个小时的每分钟执行ls -l /etc/ > /tmp/to.txt 命令

*/1 * * * * ls -l /etc/ > /tmp/to.txt

3)5个占位符的说明

4)特殊符号说明

案例:

5)使用*.sh脚本执行定时任务

如:每隔2分钟,将当前日期和日历都追加到/home/mycal.txt文件中

第一步:创建my.sh文件脚本,并编辑需要执行的指令

vim my.sh

//编辑指令
date >> /home/mycal.txt
cal >> /home/mycal.txt

//保存退出

第二步:设置my.sh的执行权限给所有者,说明是一个可执行文件

chmod u+x my.sh

第三步:使用crontab 指令增加定时任务

crontab -e

//编辑内容为:
*/2 * * * * /home/my.sh

//保存退出

6)案例

应用实列:
案例1:每隔1分钟,就将当前的日期信息,追加到/tmp/mydate文件中
	crontab -e
	//编辑内容:
		*/1 * * * * data >> /tmp/mydata
	
案例2:每隔2分钟,将当前日期和日历都追加到/home/mycal文件中
//详见:5)使用*.sh脚本执行定时任务
				
案列3:每天凌晨2:00将mysql数据库testdb,备份到文件中,
提示:指令为mysqldump -u root -p密码 数据库 > /home/bd.bak
	第一步:crontab -e
	第二步:0 2 * * * mysqldump -u root -proot testdb > /home/db.bak

2 at定时任务

1)基本介绍:

  • at命令是一次性定时计划任务,at的守护进程atd会以 后台模式进行运行,检查作业队列来运行默认情况下,atd守护进程每60秒检查作业队列,有作业时,会检查作业运行时间,如果时间与当前时间匹配,则运行此作业
  • at命令是一次性定时任务计划,执行完一个任务后不再执行此任务了,并将任务移除

注意:在使用at命令的时候,一定要保证atd进程的启动,可以使用相关指令来查看

ps -ef | grep atd

2)at命令格式

at [选项] [时间]
ctrl + D 结束at命令输入(两次)

at命令选项:

at时间参数:

3)查看系统中的at定时任务-atq

语法:

atq

4)删除设置的at定时任务

语法:

atrm 编号

5)使用*.sh脚本执行at定时任务

如:2分钟后,执行/home/my.sh

at now + 2minutes

接着输入执行的指令
/home/my.sh

按Ctrl+D两次,退出
可以查看创建的at定时任务
atq

6)案例:

案例1:

2天后的下午5点执行/bin/my.sh /home/a.txt

at 5pm + 2days

接着输入执行的指令
/bin/my.sh /home/a.txt

按Ctrl+D两次,退出
可以查看创建的at定时任务
atq

案例2:

明天17点钟,输出时间到指定文件/home/b.txt内

at 5pm tomorrow

接着输入执行的指令
date > /home/b.txt

按Ctrl+D两次,退出
可以查看创建的at定时任务
atq

案例3:

2分钟后,输出时间到指定文件/home/c.txt内

at now + 2minutes

接着输入执行的指令
date > /home/c.txt

按Ctrl+D两次,退出
可以查看创建的at定时任务
atq
案例4:

删除指定的at定时任务

先查看at定时任务得到,对应的编号
atq

//删除对应编号的at定时任务
atrm 编号

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值