您的位置:首页 > 大数据 > 云计算

云计算基础 第十章 计划任务

2020-03-05 11:43 591 查看

计划任务

简介

**作用:**
计划任务主要是做一些周期性的任务,目前最主要的用途是定期备份数据。
**分类:**
一次性调度执行 at
Schedule one-time tasks with at.
循环调度执行 cron
Schedule recurring jobs with cron.

一次性调度执行 at

**语法格式**
语法格式
at <TIMESPEC>
<TIMESPEC>示例
now +5min
5分钟后
teatime tomorrow (teatime is 16:00)
下午茶时间
noon +4 days
第四天中午
5pm august 3 2029
2020年8月3日下午5点
4:00 2019-11-27
某年某月某日某时
**例1**
初识一次性任务计划
1.设置一个定时创建用户的任务
[root@localhost ~]# at  now   +1min
at> useradd uuuu
at> <EOT>
CTRL+D输入完毕,提交任务
job 1 at Sat Mar 21 22:34:00 2019
2.查询任务
[root@localhost ~]# atq
3 Thu Mar 30 09:55:00 2019 a root
3.验证结果
[root@localhost ~]# id uuuu
查出用户信息即可

循环调度执行 cron

简介

cron的概念和crontab是不可分割的。
crontab是一个命令,常见于Unix和Linux的操作系统之中
用于设置周期性被执行的指令。
该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行。

查看进程状态

[root@qianfeng ~]# systemctl status crond.service
[root@qianfeng ~]# ps aux |grep crond
root 550 0.0 0.0 126300 1648 ? Ss 10:05 0:00 /usr/sbin/crond -n
crond程序运行是计划任务执行的根本

cron示例

**计划任务存储位置**
[root@localhost ~]# ls /var/spool/cron/
**管理方式**
创建计划
crontab -e Edit jobs for the current user
查询计划
crontab -l List the jobs for the current user
管理员可以使用 -u username, 去管理其他用户的计划任务
删除计划
crontab -r Remove all jobs for the current users.
**语法格式 Job format**
# .---------------- 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,fri,sat
| | | | |
* * * * * command
说明
分 时 日 月 周     命令或脚本程序
六个部分用空格隔开
示例1
*/5 * * * * /mysql_back.sh
每五分钟执行
0 2 1,4,6 * * /mysql_back.sh
每月的1,4,6日的2点整执行
0 2 5-9 * * /mysql_back.sh
每月5日到9日的两点整执行
* * * * * /mysql_back.sh
每分钟执行
0 * * * * /mysql_back.sh
每小时的0分执行
0 2 * * * /mysql_back.sh
每天两点整执行
0 2 14 * * /mysql_back.sh
每月14号的2点整执行
0 2 14 2 * /mysql_back.sh
2月14日2点整执行
0 2 * * 5 /mysql_back.sh
不写月日,仅周生效
每月的周五,两点执行
0 2 2 6 5 /mysql_back.sh
书写月和日,月或日,月日周均生效
6月2日的两点整执行
6月的周五两点整执行
示例2
00 02 * * * ls
每天2:00整
00 02 1 * * ls
每月1号2:00整
00 02 14 2 * ls
每年2月14号2:00整
00 02 * * 7 ls
每周日2:00整
00 02 * 6 5 ls
每年6月的周五2:00整  (特殊)
00 02 14 * 7 ls
每月14号2:00整
每周日2:00整
这两个时间都执行
00 02 14 2 7 ls
每年2月14号2:00整
2月每周日2:00整
这两个时间都执行
  • 点赞
  • 收藏
  • 分享
  • 文章举报
_c G 发布了12 篇原创文章 · 获赞 0 · 访问量 269 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: