当前位置: 澳门新濠3559 > 操作系统 > 正文

每个用户可以拥有自己的crontab文件,操作系统保

时间:2019-11-28 21:09来源:操作系统
当 f1 为 a, b, c,... 时表示第 a, b, c,... 分钟要实行,f2 为 a, b, c,...时表示第 a, b, c...个小时要举行,其他类推 crontab中的输出配置 crontab中时时配置运维脚本出口为:/dev/null2gt; ’的款式来

当 f1 为 a, b, c,... 时表示第 a, b, c,... 分钟要实行,f2 为 a, b, c,... 时表示第 a, b, c...个小时要举行,其他类推

crontab中的输出配置

crontab中时时配置运维脚本出口为:>/dev/null 2>&1,来制止crontab运转中有内容输出。
shell命令的结果可以通过‘> ’的款式来定义输出
/dev/null 代表空设备文件
> 代表重定向到何地,举例:echo "123" > /home/123.txt
1 表示stdout标准输出,系统暗许值是1,所以">/dev/null"等同于"1>/dev/null"
2 表示stderr标准错误
& 代表生龙活虎致的情趣,2>&1,表示2的输出重定向等同于1
那就是说重定向输出语句的含义:
1>/dev/null 首先代表行业内部输出重定向到空设备文件,也正是不出口任何消息到终端,不显得任何音讯。
2>&1 表示行业内部错误输出重定向等同于标准输出,因为事前标准输出已经重定向到了空设备文件,所以规范错误输出也重定向到空设备文件。

平复错失的crontab文件

假诺极大心误删了crontab文件,假若你在投机的$HOME目录下还会有叁个备份,那么能够将其拷贝到/var/spool/cron/<username>,在那之中<username >是客商名。假若出于权力难点无法到位拷贝,能够用:

$ crontab <filename>

个中,<filename>是您在$HOME目录中别本的文本名。

crontab文件包括送交cron守护进程的豆蔻年华雨后冬笋作业和指令。每一个客户能够具有协和的crontab文件;同期,操作系统一保险存三个指向性任何系列的crontab文件,该公文日常寄放于/etc只怕/etc之下的子目录中,而那些文件只好由系统管理员来修改。

使用者也得以将有所的设定先贮存在档案 file 中,用 crontab file 的艺术来设准时程表。

语法介绍

图片 1

crontab命令表达

crontab命令表达

行使权限:
root用户和crontab文件的所有者
语法:
crontab [-e [UserName]|-l [UserName]|-r [UserName]|-v [UserName]|File ]
说明:
crontab 是用来让使用者在一定期间或定点间距施行顺序之用,换句话说,也便是雷同使用者的时程表。
-u user 是指设定钦命 user 的时程表,这几个前提是您必定要有其权力(例如正是root卡塔尔(英语:State of Qatar)才具够内定别人的时程表。若是不应用 -u user 的话,正是象征设定本人的时程表。
参数:
-e [UserName]: 推行文字编辑器来设定时程表,内定的文字编辑器是 VI。
-r [UserName]: 删除近日的时程表
-l [UserName]: 列出近些日子的时程表
-v [UserName]:列出顾客cron作业的事态
时程表的格式如下:
f1 f2 f3 f4 f5 program
其间 f1 是意味秒钟,f2 表示时辰,f3 表示三个月份中的第几日,f4 表示月份,f5 表示多个星期中的第几天。program 代表要施行的程式。
当 f1 为 * 时表示每秒钟都要试行 program,f2 为 * 时表示每小时都要试行程式,其他类推
当 f1 为 a-b 时表示从第 a 分钟到第 b 分钟这段时光内要实施,f2 为 a-b 时表示从第 a 到第 b 小时都要实践,其他类推
当 f1 为 */n 时表示每 n 秒钟个时刻间距施行一次,f2 为 */n 表示每 n 小时个时刻间隔试行一回,别的类推
当 f1 为 a, b, c,... 时表示第 a, b, c,... 分钟要试行,f2 为 a, b, c,... 时表示第 a, b, c...个时辰要施行,别的类推。

例子:

  1. 每月天天每小时的第 0 分钟实践一回 /bin/ls :
0 * * * * /bin/ls
  1. 在 12 月内, 天天的清晨 6 点到 12 点中,每间隔 20 分钟实施二次/usr/bin/backup :
*/20 6-12 * 12 * /usr/bin/backup
  1. 礼拜四到周一每一日早晨 5:00 寄生机勃勃封信给 alex_mail_name :
0 17 * * 1-5 mail -s "hi" alex_mail_name < /tmp/maildata
  1. 每月每一日的清晨 0 点 20 分, 2 点 20 分, 4 点 20 分....实行 echo "haha"
20 0-23/2 * * * echo "haha"
  1. 夜晚11点到上午7点中间每多个时辰,中午8点
0 23-7/2,8 * * * date

注意:

  1. 当程式在您所钦命的年华实践后,系统会寄风流洒脱封信给你,突显该程式履行的内容,要是你不指望采用那样的信,请在每风流罗曼蒂克行空风度翩翩格之后加上 > /dev/null 2>&1 就可以。
  2. %在crontab中被以为是newline,要用来escape才行。举个例子crontab实行行中,如若有"date +%Y%m%d",必得替换为:"date +%Y%m%d"

  crontab [-e [UserName]|-l [UserName]|-r [UserName]|-v [UserName]|File ]

当 f1 为 */n 时表示每 n 分钟个时间距离施行一回,f2 为 */n 代表每 n 时辰个时间隔离试行二回,别的类推

动用办法

用VI编辑一个文书 cronfile,然后在此个文件中输入格式优越的时程表。编辑完毕后,保存并脱离。[2] 

在命令行输入

$: crontab cronfile

那般就将cronfile文件提交给c r o n进度,同不常间,新创立cronfile的三个别本已经被放在/ v a r / s p o o l / c r o n目录中,文件名就是顾客名。

例子:

每月天天每小时的第 0 分钟试行三回 /bin/ls :

0 * * * * /bin/ls

在 12 月内, 每日的上午 6 点到 12 点中,每间距 20 分钟实践一遍/usr/bin/backup :

*/20 6-12 * 12 * /usr/bin/backup

礼拜五到星期五每天凌晨 5:00 寄后生可畏封信给 alex_mail_name :

0 17 * * 1-5 mail -s "hi" alex_mail_name < /tmp/maildata

每月天天的早晨 0 点 20 分, 2 点 20 分, 4 点 20 分....试行 echo "haha"

20 0-23/2 * * * echo "haha"

夜里11点到中午8点中间每多少个时辰,上午8点

0 23-7/2,8 * * * date

在hpUnix中,每20分钟实施三遍,表示为:0,20,40 * * * * 而不能够应用*/n方式,不然现身语法错误

注意:

1. 当程式在您所钦赐的时刻实践后,系统会寄黄金时代封信给您,显示该程式实行的内容,倘让你不愿意选择那样的信,请在每生龙活虎行空意气风发格之后加上 > /dev/null 2>&1 就可以。

2. %在crontab中被认为是newline,要用来escape才行。比如crontab奉行行中,假诺有"date +%Y%m%d",必需替换为:"date +%Y%m%d"

当 f1 为 * 时表示每分钟都要实施 program,f2 为 * 时表示每小时都要履路程式,其他类推

crontab中的输出配置

crontab中常常配置运转脚本输出为:>/dev/null 2>&1,来防止crontab运营中有内容输出。

shell命令的结果可以经过‘> ’的情势来定义输出

/dev/null 代表空设备文件

> 代表重定向到何地,譬喻:echo "123" > /home/123.txt

1 表示stdout标准输出,系统默许值是1,所以">/dev/null"等同于"1>/dev/null"

2 表示stderr标准错误

& 代表无差距的情致,2>&1,表示2的输出重定向等同于1

那正是说重定向输出语句的意义:

1>/dev/null 首先代表业内输出重定向到空设备文件,也正是不出口任何信息到极点,不出示其余信息。

2>&1 表示行业内部错误输出重定向等同于规范输出,因为事情发生前规范输出已经重定向到了空设备文件,所以标准错误输出也重定向到空设备文件。

 

招待补充。

       

 

    crontab文件蕴藏送交cron守护进程的少年老成雨后玉兰片作业和下令。每一个客户能够享有协调的crontab文件;同一时间,操作系统一保险存二个照准任何系统的crontab文件,该文件日常贮存于/etc大概/etc之下的子目录中,而以此文件只好由管理员来修改,平日正是root顾客。

     摘要:相信广大linux发烧友们或开垦进度中都在接受Linux境况呢。当中crontab就是三个那贰个有力的准时任务试行器。比如大家得以设置好什么时候施行职务的脚本,系统会在钦定的时刻内开首职责。等到大家须求的时候已经将结果输出到了点名的文书或文告给了组织者。可认为大家节省不知凡几时光的。上边介绍一下crontab的现实性用法。

创建crontab

在虚构向cron进度提交三个crontab文件以前,首先要做的风姿洒脱件职业正是安装意况变量EDITO昂科雷。cron进度依照它来分明使用哪个编辑器编辑crontab文件。99 %的UNIX和LINUX客户都利用vi,要是你也是那般,那么您就编写$HOME目录下的.profile文件,在中间参与那样大器晚成行:

EDITOR=vi; export EDITOR

然后保留并脱离。

不要紧创造一个名字为<user>cron的文件,此中<user>是顾客名,为了提交你刚刚创制的crontab文件,能够把那个新创制的公文作为cron命令的参数:

$ crontab davecron

现行反革命该文件已经交给给cron进度,同不经常间,新创造文件的二个别本已经被放在/var/spool/cron目录中,文件名正是客商名(即,dave)。

里头 f1 是意味着分钟,f2 表示小时,f3 表示贰个月份中的第几日,f4 表示月份,f5 表示二个礼拜中的第几天。program 表示要进行的程式。

-v [UserName]:列出客户cron作业的动静

-u user 是指设定钦点 user 的时程表,那一个前提是你一定要有其权力(比方身为 root卡塔尔才能够钦赐旁人的时程表。即使不行使 -u user 的话,就是代表设定本身的时程表。

编辑crontab文件

假设指望丰裕、删除或编辑crontab文件中的条款,而EDITOCR-V景况变量又设置为vi,那么就足以用vi来编排crontab文件,相应的通令为:

$ crontab -e

能够像使用vi编辑别的任何文件那样改正crontab文件并脱离。

当 f1 为 a-b 时表示从第 a 分钟到第 b 分钟这段时间内要实施,f2 为 a-b 时表示从第 a 到第 b 小时都要实践,别的类推

-r [UserName]: 删除近年来的时程表

   crontab文件的每后生可畏行均据守一定的格式,由空格或tab分隔为数个世界,种种领域能够停放单风流洒脱或多个数值。

列出crontab文件

为了列出crontab文件,能够用:

$crontab -l

删除crontab文件

为了删除crontab文件,能够用:

$ crontab -r

 

  使用语法:

     crontab命令家常便饭于linux的操作系统之中,用于安装周期性被实施的通令。该命令从行业内部输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和实行。该词来源于法文chronos(χρνο卡塔尔,原意是岁月。经常,crontab积存的下令被医生和医护人员进度激活, crond常常在后台运转,每一分钟检查是还是不是有预订的课业必要试行。那类作业经常称为cron jobs

-l [UserName]: 列出当下的时程表

参数:

注释crontab文件

要是不愿意删除写好的crontab文件,在该crontab文件前增多#将该文件注释掉。

crontab 是用来让使用者在固化时间或定点间距推行顺序之用,换句话说,约等于相仿使用者的时程表。

时程表的格式如下:

-e [UserName]: 施行文字编辑器来设按期程表,钦赐的文字编辑器是 VI,假设您想用其余文字编辑器,则请先设定 VISUAL 情形变数来钦定使用特别文字编辑器(比方说 setenv VISUAL joe卡塔尔国

f1 f2 f3 f4 f5 program

出于unix 版本不相通,所以有的语法有差别,举例在hp unix aix 中设定间隔推行假若使用*/n 格局将应际而生语法错误,在这里类unix中 ,间距实行只好以点数形式。

编辑:操作系统 本文来源:每个用户可以拥有自己的crontab文件,操作系统保

关键词:

  • 上一篇:没有了
  • 下一篇:没有了