按时每日任务调度

任务调度:就是指系统软件在某一時间实行的相应的指令或程序流程

任务调度归类

  • 系统软件工作中:有一些关键的运行务必日复一日的实行

  • 某些用户工作中:某些用户很有可能期待实行一些程序流程

crontab 开展工作的设定

基本上英语的语法

crontab [选择项]

常见选择项

 -e:编写 crontab计划任务

 -l:查看crontab每日任务

 -r:删除当前用户全部的crontab每日任务

迅速新手入门

设定任务调度文档/etc/crontab

设定本人任务调度:crontab -e

然后键入每日任务到调度文档

*/1**** ls -l /etc/ > /tmp/to.txt

每小時的每分实行ls -l /etc/ > /tmp/to.txt指令

关键点表明
  • 5个定位点符的表明

    • 第一个 "*”:一小时之中的第数分钟 【0-59】

    • 第二个 “*”:一天之中的第几名钟头 【0-23】

    • 第三个 “*”:一个月之中的什么时间 【1-31】

    • 第四个 “*”:一年之中的第几名月 【1-12】

    • 第五个 “*”:一周之中的周几 【0-7】( 0 和 7 都意味着周日)

  • 特殊字符表明

    • *:表明一切時间。如第一个”*”,就意味着一小时中每分都实行一次

    • ,:表明不持续的時间。如“ 0 8,12 * * * ”,就意味着每日的8点0分,12点0分实行一次

    • -:表明持续的时间段。如“ 0 5 * * 1-6 ”,意味着周一到周六零晨5点0分实行

    • */n:表明每过多长时间实行一次。例如“ */1 * * * * ”,意味着每过1分钟实行一次

crond 有关命令

停止任务调度

crontab -r

列举当今有那些任务调度

crontab -l

重新启动任务调度

service crond restart

at 计划任务

基本上详细介绍

  1. at指令是一次性按时任务计划,at的xinetdatd会以后台管理方式运作,检查作业序列来运作

  2. 默认设置状况下,atdxinetd每 60 秒检查作业序列,有工作时,会检查作业运作時间,如時间与现在时间配对,则运作此工作

  3. at指令是一次性按时任务计划,实行完一个每日任务后不会再实行此每日任务

  4. 在应用at指令时,一定要确保atd过程的运行 能够 应用有关命令来查询:ps -ef | grep atd

基本上英语的语法

at [选择项] [時间]

Ctrl + D 完毕at指令的键入,2次

常见选择项

 -m:当特定的目标被进行后,将给用户推送电子邮件,即便沒有规范輸出

 -Iatd的别称

 -datrm的别称

 -v:表明每日任务将强制执行的時间

 -c:打印出每日任务的內容到规范輸出

 -V:表明版本信息

 -q<序列>:应用规定的序列

 -f<文档>:从特定文档读取每日任务而不是从规范键入读取

 -t<時间主要参数>:以時间主要参数的方式递交要运转的每日任务

at 特定時间

  1. 接纳在当日的 hh:mm(钟头:分鐘)式的時间特定。倘若该時间已以往,那麼就放到第二天实行。 比如:04:00

  2. 应用 midnight(深更半夜),noon(下午),teatime(喝茶時间,一般是中午 4 点)等较为模糊不清的词句来特定時间。

  3. 选用 12 钟头记时制,即在時间后边再加上 AM(早上)或 PM(中午)来表明是早上或是中午。 比如:12pm

  4. 特定指令实行的实际日期,特定文件格式为 month day(月 日)或 mm/dd/yy(月/日/年)或 dd.mm.yy(日.月.年),特定的日期务必跟在指定的时间段的后边。 比如:04:00 2021-03-1

  5. 应用相对性记时法。特定文件格式为:now + count time-units ,now 便是现在时间,time-units 是时间单位,这儿可以是 minutes(分鐘)、hours(钟头)、days(天)、weeks(礼拜)。count 是时间段的总数,几日,几个小时。 比如:now + 5 minutes

  6. 立即应用 today(今日)、tomorrow(明日)来特定进行指令的時间。

实例:2天后的下等5点实行 /bin/ls/home

$ at 5pm + 2 days
at> /bin/ls/home