Linu计划任务/crontab命令
周期性任务计划
相关程序包:
cronie:主程序包,提供了crond守护进程及相关辅助工具
cronie-anacron:cronie的补充程序;用于监控cronie任务执行状况;如cronie中的任务在过去该运行的时间点未能正常运行,则anacron会随后启动一次次任务
crontabs:包含CentOS提供系统维护任务
计划任务守护进程crond运行状态查看方法
CentOS7:
systemctl status crond
CentOS6:
service crond status
编写计划任务两种方式:
系统计划任务设定:编写配置文件/etc/crontab
用户计划任务设定:执行# crontab -e 命令。在实际工作中,一般采用此方式设定计划任务
crontab命令常用选项
crontab -l:查看自己的cron任务列表
crontab -e:通过EDITOR变量中定义的编辑器打开用户自己的cron配置文件;编辑单独的任务都使用-e选项,无论是删除、修改还是新建
crontab -r:移除crontab文件,慎用!
crontab -i:同-r一同使用,以交互式模式让用户有选择的删除指定任务
crontab -u UserName:仅root可运行,指定某个用户,需要配合其他选项如-l -e使用例如:#crontab -e -u docker(管理员root用户给docker用户设定计划任务)
计划任务编写格式
时间格式
# 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,fri,sat
# | | | | |
# * * * * * user-name command to be executed
时间格式举例:
* * * #每天7点6分
* * #每月8号 7点6分
* * * #每月8号7点,每分钟执行
- * * * #每天7点30-35分,每分钟执行
, * * * * #每小时的5,35分钟执行
-/ * * * * #每小时的5-45分钟,每隔三分钟执行一次
时间表示法说明:
(1)特定值:每个时间位都应该使用其可用的有效取值范围内的值;
(2)*:某时间位上的*表示对应位的所有有效取值;
(3)-:连续的时间相邻点取值
(4),:离散的时间点取值 #,#,#
(5)/#:表示在指定时间范围内每隔#一次;
另一种时间格式
@reboot Run once after reboot #每次系统重启或者重新开机都执行一次
@yearly 0 0 1 1 *
@annually 0 0 1 1 *
@monthly 0 0 1 * *
@weekly 0 0 * * 0
@daily 0 0 * * *
@hourly 0 * * * *
计划任务编写举例
(1)每3分钟执行一个echo "how are you?"
# crontab -e
*/3 * * * * /bin/echo "how are you?" (2)每周2、4、6备份/etc/目录至/backup目录中,备份的文件名以当前etc_开头并跟上当日的日期作为文件名
# crontab -e
3 2 * * 2,4,6 /bin/tar -Jcf /backup/etc_`date '+%F'` .tar.xz /etc/* (3)周天6、9、12、15、18查看一下当前系统挂载的所有文件系统,并将查看的结果追加至/tmp/mounts.txt文件中
# crontab -e
17 6,9,12,15,18 * * * /bin/mount >> /tmp/mounts.txt (4)每天每两小时取当前系统内存空间余量,将其保存至/stats/memory.txt文件中
# crontab -e
1 */2 * * * /bin/grep "^MemFree:" /proc/meminfo >> /stats/memory.txt
制作定时任务的规范:
1、为定时任务加必要的注释
2、执行shell脚本任务前加/bin/sh
3、默认输出信息会以邮件形式发送到用户,可通过重定向到/dev/null中来拒收邮件
如:1 1 * * * /bin/bash xxxx.sh &>/dev/null
4、定时任务命令或程序最好写到脚本里执行
5、在指定用户下执行相关的定时任务
6、定时任务执行的脚本要规范路径(/server/scripts)
Linu计划任务/crontab命令的更多相关文章
- 7.控制计划任务crontab命令
at 命令是针对仅运行一次的任务,循环运行的例行性计划任务,linux系统则是由 cron (crond) 这个系统服务来控制的Linux 系统上面原本就有非常多的计划 性工作,因此这个系统服务是默认 ...
- Linux下计划任务:crontab 命令的权限说明
Linux下的计划任务: 使用crontab命令来执行调度,在 Linux 下可以通过创建文件 /etc/cron.allow 或者 /etc/cron.deny 来控制权限,如果 /etc/cron ...
- 使用crontab命令添加计划任务
Ubuntu 16.04, 计划任务 就是 有(时间)计划地执行(做)任务,有计划 包括 定时执行(在哪些时间点执行任务).按照周期执行(每隔多少时间执行任务). 那么,什么是任务呢?就是 自己想要干 ...
- Linux运维技术之详解任务计划(crontab命令)
crontab命令 按照预先设置的时间周期(分钟.小时.天……)重复执行用户指定的命令操作,属于周期性计划任务 (1).先来看一下/etc/crontab文件的内容: [root@localhost ...
- 二十三、Linux任务计划及周期性任务执行:at、crontab命令
一.概述 未来的某时间点执行一次某任务:at, batch周期性运行某任务:crontab 这两个任务的执行结果:会通过邮件发送给用户 (本地终端用户之间的邮件通知) centos 5,6,7默认开启 ...
- Linux任务计划及周期性任务执行:at、crontab命令
一.概述 未来的某时间点执行一次某任务:at, batch 周期性运行某任务:crontab 这两个任务的执行结果:会通过邮件发送给用户 (本地终端用户之间的邮件通知) centos 5,6,7默认开 ...
- linux命令:crontab命令(转)
一.crond简介 二.crond服务 三.crontab命令详解 四.使用注意事项 linux系统是由 cron (crond) 这个系统服务来控制的.Linux 系统上面原本就有非常多的计划性工作 ...
- linux下crontab命令的使用
1.crond crond是Linux下的一个守护进程,与windows下的计划任务类似,当操作系统安装完成后,默认会安装并启动进程,Linux下的任务调度分为两类,系统任务调度和用户任务调度. 系统 ...
- linux定时执行任务crontab命令用法
linux系统的定时任务是由 cron (crond) 这个系统服务来控制的.Linux 系统上面原本就有非常多的计划性工作,因此这个系统服务是默认启动的.另外, 由于使用者自己也可以设置计划任务,所 ...
随机推荐
- jQuery+PHP+Ajax动态数字统计展示实例
jQuery+PHP+Ajax实现的一款动态数字统计展示实例,本例是在页面上动态展示了当前在线用户数,当然了,你可以应用到其他更多场景中. 首先我们在#number放置要统计的数字: <div ...
- 在linux下安装java(centos和ubuntu)
在本地测试环境安装插件,发现还得用到java,虽说是个程序员,可是没用过java啊,哎,但是插件得用啊,怎么办啊?自己装呗 一.自己的系统:CentOS 7 1.查看CentOS自带JDK是否已安装. ...
- HTTPS 学习
问题 数字签名的作用是什么? 为什么 HTTPS 是安全的 CA存在的动机是什么 客户端的公钥的都是一致的吗? 概述 这一节我们将要讲HTTPS,为什么说HTTPS是安全的,而HTTP是不安全的呢,这 ...
- Arrays.asList() 踩坑
该方法是将 数组转化为list,但转换后的list集合,不支持add 和 remove 代码如下: 阅读相关: 本类演示了Arrays类中的asList方法 (1) 该方法对于基本数据类型的数组支持 ...
- 【C语言】将输入的10个整数逆序输出
代码1: #include <stdio.h> int main() { ], b[]; int i,j; printf("请输入10个整数:\n"); ; i < ...
- 【MySQL】外键的变种
" 目录 三种关系 多对一 多对多 一对一 因为有foreign key的约束,使得两张表形成了三种关系: 多对一 多对多 一对多 重点理解如何找出两张表之间的关系 现在有A.B两张表 分析 ...
- P1428
AC: #include <stdio.h> #define rep(i, a, b) for(int i = a; i <= b; i++) #define min(a, b) ( ...
- python基础(三)---Python基础语法
1. 注释 1.1 单行注释 语法格式: #[空格]说明性文字信息 添加快捷键: Ctrl+/ 取消快捷键: Ctrl+/ 1.2 多行注释 语法格式: """说明性文字 ...
- 给博客页面添加 live2d 小萝莉
添加依赖 在页脚HTML代码的地方添加下面的代码: <script src="https://eqcn.ajz.miesnfu.com/wp-content/plugins/wp-3d ...
- django之路由分组,路由分发,FBV,CBV,ORM框架
今日的内容: a. 路由系统 1. 创建app 2. 路由的分组 3. 路由的分发 - 正则表达式匹配 b. django的orm(模型model) 1. 创建模型的步骤 2. orm基本的增删改查 ...