linux计划任务

Linux软件安装扩展内容

linux计划任务

让命令在未来的某个时间点去执行,相当于QQ上发送定时说说、定时开关机。

一次性调度执行at

Schedule one-time tasks with at:定时执行一次之后就不再去执行了。

语法格式

at在执行的时候可以有很多的说法,因为它的时间可以不一样。

at 时间 
  • 示例:定时创建用户的任务
    给计算机命令行时间
at now +2min

输入在未来的时间要做的事情

at> useradd user01

按下Ctrl + D键输入完毕,提交任务。
可以按下atq 查看任务完成了没有
at这个命令在很多系统中都可以去执行。

循环调度执行cron

Schedule recurring jobs with cron:定时的反复执行某个任务
cron的概念和crontab是分不开的。crontab是一个命令,常见于unix和linux的操作系统图中,用来设置周期性被执行的指令,该命令从标准输入设备读取指令,并将其存放于crontab文件中,以便于之后的读取和执行。

语法格式

crond程序的运行是计划任务执行的根本条件,所以要查看crond程序的状态。

  • 查看进程的状态
systemctl status crond.service

在这里插入图片描述
这个服务正在运行。

ps aux | grep crond

在这里插入图片描述

  • cron示例

查看计划任务存储的位置

ls /var/spool/cron

创建一个计划

crontab -e 
//edit jobs for the current user

在命令行中按下这条命令后,会跳进一个记事本程序,这时可以在这个记事本中编写很多条语句。

# 编写形式* * * * * command
# 分 时 日 月 周  命令或者脚本程序
# 第一个*代表的是分   minute
# 第二个*代表的是小时 hour
# 第三个*代表的是天   day
# 第四个*代表的是月   month
# 第五个*代表的是周   week

# 在每一年的3月的15号1点15分执行
5 1 15 3 *  /mysql_back.sh
# 注意:*代表的任意的时间

# 在每天的1点5分执行
5 1 * * * /mysql_back.sh

# 在一小时的5分执行
5 * * * * /mysql_back.sh

# 如果是每隔5分钟去执行呢?
*/5 * * * * /usr/bin/ls /tmp
# 以此类推,重要的是这5颗*号不可以缺少

# 在每月的1,4,6号2点整去执行这条命令
0 2 1,4,6 * * /usr/bin/ls /tmp

# 在每月的5号到9号的的2点整执行命令
0 2 5-9 * * /usr/bin/ls /tmp

# 每月的每天的每小时的每分钟都在执行
* * * * * /usr/bin/ls /tmp

# 0代表的是0分钟,是每月每日每小时的零分执行,而不是每分钟。
0 * * * * /usr/bin/ls /home

# 每天的2点0分执行
0 2 * * * /mysql_back.sh

# 每月的14号的2点0分执行
0 2 14 * * /mysql_back.sh

# 每年的2月14号2点0分执行
0 2 14 2 * /mysql_back.sh

# 这一段表示的是每周5的2点0分执行,一般不写星期,一般的都是月 日 时 分搭配或者是周 时 分搭配,通常不都写上去。
0 2 * * week:5 /mysql_back.sh

# 如果5个星号都写上去了,那么取这两个条件的交集,所以是6月的2号2点0分执行一次和6月的每周的星期5的2点0分执行一次,总共是5次
0 2 2 6 5 /mysql_back.sh

# 每天的2点整执行
00 02 * * * ls

# 每月的1号的2点整执行
00 02 1 * * ls

# 每年2月14号2点整执行
00 02 14 2 * ls

# 每周日2点整执行
00 02 * * 7 ls

# 6月的星期5的2点整执行
00 02 * 6 5 ls

# 每一个月的14号2点整执行一次还有就是每个月的星期天执行一次,总共5次
00 02 14 * 7 ls

# 2月的14号2点整和2月的星期天执行
00 02 14 2 7 ls
                                                                                                                                                                                                                                                                                                               

这时会给你发邮件,每隔一段时间就执行命令,再将执行的结果通过邮件的形式发送给你,可以使用mail命令去查看邮件。
在这里插入图片描述
可以按下数字去查看邮件的内容
在这里插入图片描述
这就是成功了,按下q退出邮件页面。

查询创建的计划

crontab -l 
//list the jobs for the current user

管理员可以使用-u username去管理其他用户的计划任务

删除一个计划

crontab -r 
//remove all jobs for the current user.

linux日志管理

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qq_45671732

你们鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值