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 系统上面原本就有非常多的计划性工作,因此这个系统服务是默认启动的.另外, 由于使用者自己也可以设置计划任务,所 ...
随机推荐
- Linux运维工作总结教训
Linux运维一定要知道的六类好习惯和23个教训,避免入坑!从事运维三年半,遇到过各式各样的问题,数据丢失,网站挂马,误删数据库文件,黑客攻击等各类问题. 今天简单整理一下,分享给各位小伙伴. 一.线 ...
- Python3.6打开EAIDK-610开发板(计算机通用)摄像头拍照并保存
环境:python3.6 代码: import cv2 import os output_dir ='/home/openailab/Desktop/huahui/came/' i = cap = c ...
- Linux - 常用Shell软件
tldr conda dstat htop oh-my-zsh https://github.com/nicolargo/glances neofetch
- 简单桶排序(Bucket Sort)
1.基本思想 桶排序是将待排序集合中处于同一个值域的元素存放在同一个桶中1. 2.算法设计2 假设有一个班级有5个人,这次期末他们分别考了5分,2分,4分,5分,8分(满分为10分).需要将这些分数从 ...
- IdentityHashCodeTest
Java学习:identityHashCode和hashCode方法, System类提供了一个identityHashCode(Object x)方法,这个方法返回的是指定对象的精确hashCode ...
- Windows 10下一步一步创建 Scrapy框架的项目
此文是本人的学习笔记,网上搜索了很多资料,也走了一些弯路,记录下安装的过程,以便日后回顾 1.安装Anaconda3,安装时默认选项 2.装完Anaconda3后,打开系统变量在path路径下增加An ...
- 使用Log4net记录日志(非常重要)
使用Log4net记录日志 首先说说为什么要进行日志记录.在一个完整的程序系统里面,日志系统是一个非常重要的功能组成部分.它可以记录下系统所产生的所有行为,并按照某种规范表达出来.我们可以使用日志 ...
- 【译】高级T-SQL进阶系列 (三)【上篇】:理解公共表表达式(CTEs)
[译注:此文为翻译,由于本人水平所限,疏漏在所难免,欢迎探讨指正] 原文链接:传送门. 伴随着SQL SERVER 2005的首次展示,微软介绍了一种新的被称为“公共表 表达式”(CTE)的查询结构. ...
- C++文件写入,读出函数ofstream,ifstream的使用方法
ofstream是从内存到硬盘,ifstream是从硬盘到内存,其实所谓的流缓冲就是内存空间. 1.插入器(<<) 向流输出数据.比如说系统有一个默认的标准输出流(cout),一般情况下 ...
- 【嵌入式】ARM9复习
一.嵌入式系统基础 二.ARM处理器 1. 在每条指令后,用;//注释这条指令的寻址方式,以及实现的功能(25分) 注:变址寻址需要标注是基址加偏移.还是基址加索引,是前变址还是后变址.SUB SP, ...