Linux中计划任务、周期性任务设置
Linux中计划任务、周期性任务设置
计划任务:指在未来的特定时间里,执行一次某一特定任务。当然,如果同一任务需要在不同时间点执行执行两次、三次或多次,可以视为多个一次看待。
周期性任务:指某一任务需要周期性的执行。周期性可以是以分、时、天等为单位,但又不限于这些单位。
常用于执行计划任务的命令——at, batch, 与周期性任务相关的的命令crontabs。
1.at命令和batch命令的区别。
at命令旨在特定的之间执行任务;batch命令设置的任务由系统选择空闲时间去执行,空闲时间默认为cpu利用率小于0.8的时候
2.at命令
格式
at [option] TIME 选项 -l atq命令的别名,显示用户的计划任务
-d atrm命令的别名,清空计划任务
-c 查看特定的计划任务
-f FILE 从文件中读取计划任务命令 TIME,有如下几种格式
HH:MM [YYYY-mm-dd]
noon, midnight, teatime
tomorrow
now+#{minutes,hours,days, weeks} 注:batch命令使用方法和at类似,这里不再赘述
3. crontabs命令
a. 与cron服务相关的程序包有三个:
cronie:主程序包,提供crond守护进程及相关辅助工具
cronie-anacron:cronie的补充程序,用于监控cronie任务执行
crontabs: 包含CentOS提供系统维护任务
b. 周期任务分类。根据用户级别,可分为系统周期任务和用户周期任务。
c. 系统周期任务一般直接直接修改/etc/crontab文件,即可配置周期任务, 可查看该文件中的内容
[root@vathe-pc tmp]#cat /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin # 环境变量路径
MAILTO=root # 周期任务执行之后,邮件接受者
HOME=/ # For details see man crontabs # Example of job definition: # 计划任务书写格式
# .---------------- minute ( - )
# | .------------- hour ( - )
# | | .---------- day of month ( - )
# | | | .------- month ( - ) OR jan,feb,mar,apr ...
# | | | | .---- day of week ( - ) (Sunday= or ) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed
d. 周期任务中,通过/etc/crontab文件可知,有5个与时间相关的选项,这些选项有如下规则:
a.特定值 #
例如: 5 或 20
b.可使用*表示任意值
c. 离散值用逗号隔开
例如: 5,6,2 或者 0,3
d. 连续值用短折线“-”表示
例如:10-21
e. 可使用正斜线“/”’步长:
例如: */3
e. 配置用户周期任务时,可以直接使用
crontabs -e
编辑相关配置文件,文件格式和/etc/crontab类似,只是不需要填写user-name选项。其他选项:
crontab -e 直接编辑文件
-l 查看周期任务
-r 清空周期任务 -i 交互模式
-u USER: 仅root可运行,指定以特定用户身份执行该周期任务
f. 用户周期任务,有自己独有的时间格式, @CMD——可代表特定周期时间
@rebootRun once after reboot.
@yearly0 *
@annually0 *
@monthly0 * *
@weekly0 * *
@daily0 * * *
@hourly0 * * * *
4. 相关的配置文件
/etc/crontab
/etc/cron.d/ 配置文件
/etc/cron.hourly/ 脚本
/etc/cron.daily/脚本
/etc/cron.weekly/脚本
/etc/cron.monthly/脚本
/etc/anacrontab 负责执行以上/etc/cron.hourly/等文件中的系统任务
/var/spool/cron/ 用户周期任务配置文件
/etc/cron.{allow,deny} 用户执行周期任务的权限配置文件
Linux中计划任务、周期性任务设置的更多相关文章
- Linux任务计划、周期性任务执行
Linux任务计划.周期性任务执行 周期性任务执行: cron 守护进程(crond):服务,不间断地运行于后台 # service crond {start|stop|status|restart} ...
- linux任务计划及周期性任务计划
相关命令:at.batch.cron.mailx 未来某时间执行一次任务:at, batch 周期性运行某任务: cron 一.未来某时间执行一次任务:at命令 at, batch, atq, atr ...
- 【进程/作业管理】篇章四:Linux任务计划、周期性任务执行
命令归纳: at 未来时间点让特定任务运行一次 batch 未来时间点让系统自行选择在系统资源较空闲的时间去执行指定的任务 corn 周期性任务计划(corntad) at命令详解 <--- 假 ...
- 如何在linux中批量建立用户并设置随机密码
Ubuntu是基于linux的免费开源操作系统,同时也是真正意义上的“多任务多用户”操作系统,既然是多用户系统,自然就涉及到创建多个用户的问题.同时由于Ubuntu系统中的root用户具有最高权限,无 ...
- 二十三、Linux任务计划及周期性任务执行:at、crontab命令
一.概述 未来的某时间点执行一次某任务:at, batch周期性运行某任务:crontab 这两个任务的执行结果:会通过邮件发送给用户 (本地终端用户之间的邮件通知) centos 5,6,7默认开启 ...
- Linux任务计划及周期性任务执行:at、crontab命令
一.概述 未来的某时间点执行一次某任务:at, batch 周期性运行某任务:crontab 这两个任务的执行结果:会通过邮件发送给用户 (本地终端用户之间的邮件通知) centos 5,6,7默认开 ...
- Linux中计划任务执行脚本crontab-简洁版
我使用的是ubuntu16,所以在ubuntu中一切正常,在其他linux系统中应该都差不多. 1 计划任务,crontab命令选项: -u指定一个用户, -l列出某个用户的任务计划, ...
- Linux 中计划任务-at-cron
概念-计划任务:在某个时段自动执行某个任务 at:只执行一次 语法:at 时间 服务:atd 必须开启 如没有:yum install at -y 查看服务状态是否开启 systemctl ...
- linux中计划任务执行脚本
我使用的是ubuntu14.4,所以在ubuntu中一切正常,在其他linux系统中应该都差不多. 1 计划任务,crontab命令选项: -u指定一个用户, -l列出某个用户的任务计 ...
随机推荐
- MySQL 5.7的原生JSON数据类型使用
新增测试用表: CREATE TABLE lnmp ( `id` ) unsigned NOT NULL AUTO_INCREMENT, `category` JSON, `tags` JSON, P ...
- SpringBoot JDBC 源码分析之——NamedParameterJdbcTemplate 查询数据返回bean对象
1,NamedParameterJdbcTemplate 查询列表 /***测试***/ public void queyBeanTest(){ String s = "select * f ...
- Install and Compile MatConvNet: CNNs for MATLAB --- Deep Learning framework
Install and Compile MatConvNet: CNNs for MATLAB --- Deep Learning framework 2017-04-18 10:19:35 If ...
- 授权oAuth
使用Client Credentials Grant授权方式给客户端发放access token 只验证客户端(Client),不验证用户(Resource Owner),只要客户端通过验证就发acc ...
- 51nod 1689 逛街(优先队列)
http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1689 题意: 题意: 枚举终点,这样就确定路上的花费,接下来只需要计算进 ...
- 测试驱动android
测试驱动android开发 在安卓模拟器或者真机上跑测试用例速度很慢.构建.部署.启动app,通常需要花费一分钟或者更久.这不是TDD(测试驱动开发)模式.Robolectric提供一种更好的方式. ...
- 【Mysql】key 、primary key 、unique key 与index区别
参考:https://blog.csdn.net/nanamasuda/article/details/52543177 总的来说,primary key .unique key 这些key建立的同时 ...
- Java中的long与double的区别
1.long与double在java中本身都是用64位存储的,但是他们的存储方式不同,导致double可储存的范围比long大很多 2.long可以准确存储19位数字,而double只能准备存储16位 ...
- Mybatis中sql语句中的in查询,判断null和size为0的情况
不严谨的写法,可能会报错:in (),这种情况不符合SQL的语法,导致程序报错. 如果简单只做非空判断,这样也有可能会有问题:本来in一个空列表,应该是没有数据才对,却变成了获取全部数据! 所以一个比 ...
- python 比较两个yaml文件
import yaml with open("a.yaml") as f: with open("a.yaml") as k: ): x=f.readline( ...