Linux任务计划
Linux任务计划:
- 一次性任务执行(at、batch);
- at:定时任务,指定一个时间执行一个任务,只能执行一次。
- at使用方式;
- 交互式:让用户在at>提示符输入多个要执行的命令;
- 批处理:将任务的个命令写入文件由at进行调用;
- at命令使用;
- at [参数] [时间]
- at> COMMAND
- at> Ctrl+d
- at时间:定义出什么时候要进行at的任务;
- HH:MM:在今日的 HH:MM 时刻进行,若该时刻已超过,则明天的 HH:MM 进行此任务。
- ex> 04:00
- HH:MM YYYY-MM-DD:规定在某年某月的某一天的特殊时刻进行该项任务
- ex> 04:00 2009-03-17
- HH:MM[am|pm] [Month] [Date]:规定在某年某月某日的某时刻进行该项任务
- ex> 04pm March 17
- HH:MM[am|pm] + number [minutes|hours|days|weeks]:规定在某个时间点再加多少时间后才进行该项任务
- ex> now + 5 minutes
- ex> 04pm + 3 days
- 时间格式扩展:at允许使用一套相当复杂的指定时间的方法。
- 能够接受在当天的hh:mm(小时:分钟)式的时间指定。假如该时间已过去,那么就放在第二天执行。
- 能够使用midnight(深夜),noon(中午),teatime(饮茶时间,一般是下午4点)等比较模糊的词语来指定时间。
- 能够采用12小时计时制,即在时间后面加上AM(上午)或PM(下午)来说明是上午还是下午。
- 能够指定命令执行的具体日期,指定格式为month day(月 日)或mm/dd/yy(月/日/年)或dd.mm.yy(日.月.年),指定的日期必须跟在指定时间的后面。
- 能够使用相对计时法。指定格式为:now + count time-units ,now就是当前时间,time-units是时间单位,这里能够是minutes(分钟)、hours(小时)、days(天)、weeks(星期)。count是时间的数量,几天,几小时。
- 能够直接使用today(今天)、tomorrow(明天)来指定完成命令的时间。
- at常用参数;
- -m :当指定的任务被完成之后,将给用户发送邮件,即使没有标准输出;
- -I :atq的别名;
- -d :atrm的别名;
- -v :显示任务将被执行的时间;
- -c :打印任务的内容到标准输出;
- -V :显示版本信息;
- -q :后面加<列队> 使用指定的列队;
- -f :后面加<文件> 从指定文件读入任务而不是从标准输入读入;
- -t :后面<时间参数> 以时间参数的形式提交要运行的任务;
- at权限控制文件;
- /etc/at.allow
- /etc/at.deny
- 控制文件使用规则;
- 先找寻 /etc/at.allow 这个文件,写在这个文件中的使用者才能使用 at ,没有在这个文件中的使用者则不能使用 at (即使没有写在 at.deny 当中);
- 如果 /etc/at.allow 不存在,就寻找 /etc/at.deny 这个文件,若写在这个 at.deny 的使用者则不能使用 at ,而没有在这个 at.deny 文件中的使用者就可以使用 at 命令。
- 如果两个文件都不存在,那么只有 root 可以使用 at 这个命令。
- 在一般的 distributions 当中,由于假设系统上的所有用户都是可信任的, 因此系统通常会保留一个空的 /etc/at.deny 文件,意思是允许所有人使用 at 命令的意思。
- 如果不希望有某些使用者使用 at 的话,将那个使用者的帐号写入 /etc/at.deny 即可! 一个帐号写一行。
- at注意事项;
- 如果at的指令输出的路径有误 则会把结果以邮件的形式发送给用户
- 当一个任务创建了会被分配到一个任务号,而且会在/var/spool/at里面排队。不建议使用vi编辑器去修改,容易出错。
- batch:跟at一样也是定期执行的命令,使用方法也跟at相同,但是不同的是batch不需要指定时间,因为它会自动在系统负载比较低的时候执行(平均负载小于0.8的时候);
- 周期性任务执行(crontab、anacron);
- crond简介;
- crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务;
- crontab任务调度;
- 系统任务调度:系统周期性所要执行的工作,比如写缓存数据到硬盘、日志清理等。
- /etc/crontab
- 分钟 小时 天 月 周 用户 任务
- 用户任务调度:用户定期要执行的工作,比如用户数据备份、定时邮件提醒等。用户可以使用 crontab 工具来定制自己的计划任务。/var/spool/cron/USERNAME,其文件名与用户名一致;
- /var/spool/cron/USERNAME
- 分钟 小时 天 月 周 用户 任务
- cron使用者权限;
- /etc/cron.deny: 文件中所列用户不允许使用crontab命令;
- /etc/cron.allow: 文件中所列用户允许使用crontab命令;
- /var/spool/cron/: 所有用户crontab文件存放的目录,以用户名命名;
- cron时间有效取值;
- 分钟:0-59;
- 小时:0-23;
- 天:1-31;
- 月:1-12;
- 周:0-7,0和7都表示周日;
- cron时间通配表示;
- *: 对应时间的所有有效取值;
- ,: 离散时间点;
- 10,40 02 * * 2,5 周2和周5在2点10分和40分执行一次任务计划
- -:连续时间点;
- 10 02 * * 1-5 周一到周五2点10分执行一次任务计划
- /#: 对应取值范围内每多久一次
- */3 * * * * 每三分钟执行一次任务
- */3 * * * * /bin/cat /etc/fstab &> /dev/null 每三分钟查看一次/etc/fstab文件,执行结果不以邮件形式发送给管理员
- crontab:
- 命令格式:
- crontab [-u user] file
- crontab [-u user] [ -e | -l | -r ]
- 常用参数:
- -e:编辑某个用户的crontab文件内容。如果不指定用户,则表示编辑当前用户的crontab文件;
- -l:显示某个用户的crontab文件内容,如果不指定用户,则表示显示当前用户的crontab文件内容;
- -r:从/var/spool/cron目录中删除某个用户的crontab文件,如果不指定用户,则默认删除当前用户的crontab文件;
- -i:在删除用户的crontab文件时给确认提示;
- -u USERNAME: 管理其用户的cron任务
- [root@template ~]# crontab -u hadoop -e
- crontab: installing new crontab
- [natasha@template ~]$ crontab -l
- 30 14 1,3,5 * * /bin/echo hello
- 注意事项;
- 如果在crontab的用户命令中使用%,得转义为\%;
- 5 3 * * * /bin/touch ~/testfile_`date +\%Y-\%m-\%d`.txt
- 在使用单引号后,%也可以不转义;
- 5 3 * * * /bin/touch ~/testfile_`date +’%Y-%m-%d‘`.txt
- anacron:是crontab的补充,用于检查crontab中某任务在过去的一个周期内是否没有执行,如果没有执行,则在开机以后的某时间点让其执行一次,无论其周期是否到达;
Linux任务计划的更多相关文章
- 配置Linux任务计划
Linux有三种计划任务: at:指定一个时间执行一个任务 (适用一个或多个任务,执行一次后就不用) cron:根据一个时间表自动执行任务 (使用一个或多个任务,周期性执行) 系统级别的计划任务及其扩 ...
- Linux操作系统计划任务
++++++++++++++++++++++++++++++++++++++++++++++++标题:Linux操作系统的计划任务内容:计划任务分为单次任务和周期性任务,周期任务分为系统级计划任务和用 ...
- Linux中计划任务、周期性任务设置
Linux中计划任务.周期性任务设置 计划任务:指在未来的特定时间里,执行一次某一特定任务.当然,如果同一任务需要在不同时间点执行执行两次.三次或多次,可以视为多个一次看待. 周期性任务:指某一任务需 ...
- Linux定时任务计划
Linux定时任务计划 在使用Linux系统时,我们有时会需要让系统在某个时间去执行特定的任务,这时就需要去了解Linux提供的定时任务功能 种类 Linux的定时任务分为两种:单一型和循环型 单一型 ...
- linux 的计划任务 定时任务
linux的计划任务,也叫做定时任务 https://www.cnblogs.com/mingforyou/p/3930636.html 名字是crond 查看linux本机的定时任务 crontab ...
- linux任务计划 chkconfig工具 systemd管理服务 unit介绍 target介绍
linux任务计划 任务计划:特定时间备份数据,重启服务,shell脚本,单独的命令等等. 任务计划配置文件:cat /etc/crontab [root@centos7 ~]# cat /etc/c ...
- linux任务计划cron
linux任务计划cron 1.crontab命令任务计划配置文件 [root@bogon ~]# cat /etc/crontab SHELL=/bin/bash PATH=/sbin:/bin:/ ...
- Linux任务计划、周期性任务执行
Linux任务计划.周期性任务执行 周期性任务执行: cron 守护进程(crond):服务,不间断地运行于后台 # service crond {start|stop|status|restart} ...
- linux下计划任务学习记录
0x01 计划任务简介 linux 中计划任务主要分为”循环执行”和”只执行一次”两种,分别对应的时 crond 服务 和 atd 服务: 0x02 只执行一次的计划任务 0x02.1 atd 服务说 ...
随机推荐
- schema约束和引入
schema的概述 schema约束同为xml文件的约束模式语言之一, 最大的作用是为了验证xml文件的规范性的. 是为了解决dtd约束不够的问题, 相应的他的配置就变得比较复杂 schema本身就是 ...
- C# 水印透明度图片
/// <summary> /// 在一张图片的指定位置处加入一张具有水印效果的图片 /// </summary> /// <param name="Sourc ...
- jpa遇到的 org.hibernate.PersistentObjectException: detached entity passed to persist异常
jpa遇到的 org.hibernate.PersistentObjectException: detached entity passed to persist异常 发生这个原因是因为我们已经在实体 ...
- JMS links
http://yuxisanren.iteye.com/blog/1912587 http://somebody-hjh.iteye.com/blog/726050 http://docs.oracl ...
- NOIP2016 模拟赛
7.10 T1:求出一个矩阵中平均数大于0的子矩阵的最大面积. T2:给出一个N行的,第I行有n+1-i的倒三角形,从中选取m个数,只有当前数的左上角和右上角都被选是才能选当前数,求选的数字的最大和 ...
- POJ 1274 裸二分图匹配
题意:每头奶牛都只愿意在她们喜欢的那些牛栏中产奶,告诉每头奶牛愿意产奶的牛棚编号,求出最多能分配到的牛栏的数量. 分析:直接二分图匹配: #include<stdio.h> #includ ...
- clip 属性剪裁绝对定位元素
如果left >= right或者bottom <= top,则元素会被完全裁掉而不可见,即“隐藏”.通过这种方式隐藏的元素是可以被屏幕阅读器等辅助设备识别的,从而提高了页面的可用性. I ...
- Hql 中 dao 层 以及daoimpl 层的代码,让mvc 模式更直观简洁
1.BaseDao接口: //使用BaseDao<T> 泛型 ,在service中注入的时候,只需要将T换为对应的bean即可 public interface BaseDao<T& ...
- Spring Boot整合Activiti,查看流程图出现中文乱码问题
最近研究SpringBoot 整合Activiti时,实现流程图高亮追踪是出现中文乱码问题,找了很多方法,现在把我最后的解决方法提供给大家. Spring Boot是微服务快速开发框架,强调的是零配置 ...
- telnet -测试端口号
点击计算机的开始菜单-->运行 ,输入CMD命令,然后确定.打开cmd命令行. 输入telnet测试端口命令: telnet IP 端口 或者 telnet 域名 端口 回车 如果端口关 ...