linux at命令可以让使用者指定在 TIME 这个特定时刻执行某个程式或指令,TIME 的格式是 HH:MM其中的 HH 为小时,MM 为分钟,甚至你也可以指定 am, pm, midnight, noon, teatime(就是下午 4 点锺)等口语词。

linux中的Cron指令是Linux的内置服务,但它不主动起来,能够用以下的办法发动、封闭这个服务:

linux中的cron和linux at指令用法详解(linux中cron命令)  linux at命令 at命令详解 cron 第1张

/sbin/service crond start //发动服务

/sbin/service crond stop //封闭服务

/sbin/service crond restart //重启服务

/sbin/service crond reload //从头载入装备

你也能够将这个服务在体系发动的时分主动发动:

在/etc/rc.d/rc.local这个脚本的结尾加上:

/sbin/service crond start

现在Cron这个服务现已在进程里边了,咱们就能够用这个服务了,Cron服务供给以下几种接口供咱们运用:

1.直接用crontab指令修改

cron服务供给crontab指令来设定cron服务的,以下是这个指令的一些参数与阐明:

crontab -u //设定某个用户的cron服务,一般root用户在履行这个指令的时分需求此参数

crontab -l //列出某个用户cron服务的具体内容

crontab -r //删去没个用户的cron服务

crontab -e //修改某个用户的cron服务

比如说root查看自己的cron设置:crontab -u root -l

再例如,root想删去fred的cron设置:crontab -u fred -r

在修改cron服务时,修改的内容有一些格局和约好,输入:crontab -u root -e

进入vi修改形式,修改的内容必定要契合下面的格局:*/1 * * * * ls >> /tmp/ls.txt

这 个格局的前一部分是对时刻的设定,后边一部分是要履行的指令,假如要履行的指令太多,能够把这些指令写到一个脚本里边,然后在这里直接调用这个脚本就能够 了,调用的时分记住写出指令的完好途径。时刻的设定咱们有必定的约好,前面五个*号代表五个数字,数字的取值规模和意义如下:

分钟 (0-59)

小時 (0-23)

日期 (1-31)

月份 (1-12)

星期 (0-6)//0代表星期天

除了数字还有几个个特别的符号便是"*"、"/"和"-"、",",*代表一切的取值规模内的数字,"/"代表每的意思,"*/5"表明每5个单位,"-"代表从某个数字到某个数字,","分隔几个离散的数字。以下举几个比如阐明问题:

每天早上6点

0 6 * * * echo "Good morning." >> /tmp/test.txt //留意单纯echo,从屏幕上看不到任何输出,由于cron把任何输出都email到root的信箱了。

每两个小时

0 */2 * * * echo "Have a break now." >> /tmp/test.txt

晚上11点到早上8点之间每两个小时,早上八点

0 23-7/2,8 * * * echo "Have a good dream:)" >> /tmp/test.txt

每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点

0 11 4 * 1-3 command line

1月1日早上4点

0 4 1 1 * command line

每 次修改完某个用户的cron设置后,cron主动在/var/spool/cron下生成一个与此用户同名的文件,此用户的cron信息都记载在这个文件 中,这个文件是不能够直接修改的,只能够用crontab -e 来修改。cron发动后每过一份钟读一次这个文件,查看是否要履行里边的指令。因而此文件修改后不需求从头发动cron服务。

2.修改/etc/crontab 文件装备cron

cron 服务每分钟不只要读一次/var/spool/cron内的一切文件,还需求读一次/etc/crontab,因而咱们装备这个文件也能运用 cron服务做一些工作。用crontab装备是针对某个用户的,而修改/etc/crontab是针对体系的使命。此文件的文件格局是:

SHELL=/bin/bash

PATH=/sbin:/bin:/usr/sbin:/usr/bin

MAILTO=root //假如呈现过错,或许有数据输出,数据作为邮件发给这个帐号

HOME=/ //运用者运转的途径,这里是根目录

# run-parts

01 * * * * root run-parts /etc/cron.hourly //每小时履行/etc/cron.hourly内的脚本

02 4 * * * root run-parts /etc/cron.daily //每天履行/etc/cron.daily内的脚本

22 4 * * 0 root run-parts /etc/cron.weekly //每星期履行/etc/cron.weekly内的脚本

42 4 1 * * root run-parts /etc/cron.monthly //每月去履行/etc/cron.monthly内的脚本

#p#

咱们留意"run-parts"这个参数了,假如去掉这个参数的话,后边就能够写要运转的某个脚本名,而不是文件夹名了

称号 : linux at指令

运用权限 : 一切运用者

运用方法 : at -V [-q queue] [-f file] [-mldbv] TIME

阐明 : linux at指令能够让运用者指定在 TIME 这个特守时刻履行某个程式或指令,TIME 的格局是 HH:MM其间的 HH 为小时,MM 为分钟,乃至你也能够指定 am, pm, midnight, noon, teatime(便是下午 4 点锺)等口语词。

假如想要指定超越一天内的时刻,则能够用 MMDDYY 或许 MM/DD/YY 的格局,其间 MM 是分钟,DD 是第几日,YY 是指年份。别的,运用者乃至也能够运用像是 now + 时刻距离来弹性指守时刻,其间的时刻距离能够是 minutes, hours, days, weeks 别的,运用者也可指定 today 或 tomorrow 来表明今日或明日。当指定了时刻并按下 enter 之后,linux at指令会进入攀谈形式并要求输入指令或程式,当你输入完后按下 ctrl+D 即可完结一切动作,至于履行的成果将会寄回你的帐号中。

把计 :

-V : 印出版别编号

-q : 运用指定的伫列(Queue)来贮存,linux at指令的材料是存放在所谓的 queue 中,运用者能够一起运用多个 queue,而 queue 的编号为 a, b, c... z 以及 A, B, ... Z 共 52 个

-m : 即便程式/指令履行完结后没有输出成果, 也要寄封信给运用者

-f file : 读入预先写好的指令档。运用者不必定要运用攀谈形式来输入,能够先将一切的指定先写入档案后再一次读入

-l : 列出一切的指定 (运用者也能够直接运用 atq 而不必 at -l)

-d : 删去指定 (运用者也能够直接运用 atrm 而不必 at -d)

-v : 列出一切现已完结但没有删去的指定

比如 :

三天后的下午 5 点锺履行 /bin/ls :

at 5pm + 3 days /bin/ls

三个星期后的下午 5 点锺履行 /bin/ls :

at 5pm + 2 weeks /bin/ls

明日的 17:20 履行 /bin/date :

at 17:20 tomorrow /bin/date

2009 年的***一天的***一分钟印出 the end of world !

at 23:59 12/31/2009 echo the end of world !

以上是linux中的cron和linux at指令用法详解。

【修改引荐】

  1. linux at指令详解及运用方法事例
  2. Linux操作体系顶用Linux at指令守时发送邮件
  3. Linux中文档查找技能大全-find指令
转载请说明出处
知优网 » linux中的cron和linux at指令用法详解(linux中cron命令)

发表评论

您需要后才能发表评论