文章内容

2018/10/23 12:50:05,作 者: 黄兵

在Linux或UNIX下调度cron作业

将作业添加到cron在Linux或UNIX下:

使用cron,Linux和UNIX用户可以在指定的时间和日期运行脚本和命令。脚本也可被安排定时执行。Corn是运行系统管理作业的首选工具,它总是在后台执行。它通常检查/etc/crontab文件,/var/spool/cron目录和/etc/cron.*/目录。Crontab命令用于安装,创建,编辑,卸载或列出属于Vixie Cron的cron作业。你可以每次使用都新建一个cron文件,他们可以编辑/var/spool/cron/crontabs中的文件。

创建或编辑cron工作:

$ crontab –e

上述命令用于在UNIX或Linux中创建或编辑corn作业。Cron在修改corn文件时不需要重新启动系统,即可执行。

Cron配置文件类型:
UNIX / Linux系统crontab通常由特权所需的系统关键作业和服务使用。用户crontab允许用户使用crontab命令安装自己的corn作业。

Crontab语法:

1 2 3 4 5 /path/to/command arg1 arg2

或者是:

1 2 3 4 5 /root/backup.sh

这里1代表分钟,2代表小时,3代表日期,4代表月份,5代表星期几。/path/to/command表示需要调度的命令和脚本的名称。

1 2 3 4 5 USERNAME /path/to/command arg1 arg2

以上命令用于系统作业。

例:

# crontab –e
0 3 * * * /root/backup.sh

cron作业安装在第一个命令中,下一个命令用于运行/root/backup.sh脚本,每天凌晨3点保存文件并在执行后关闭。


运算符: 
运算符用于在字段中定义值。
星号运算符(*)表示该字段值的所有值。例如,* in month字段表示一年中的每个月。
逗号运算符(,)表示值列表。1,5,10,15是一个例子。
破折号运算符(- )指定值的范围。例如10-15表示从10到15的值,即10,11,12,13,15。
分隔符运算符(/)表示步骤中的值。


禁用电子邮件输出:
默认情况下,脚本或命令的输出将邮寄到本地电子邮件帐户。要停止发送电子邮件> / dev / null 2>&1必须附加到crontab。
例:

MAILTO="info@pdf-lib.org"
0 3 * * * /root/backup.sh >/dev/null 2>&1

为了定义MAILTO变量,使用上述命令。这里输出邮寄到info@pdf-lib.org

Cron工作列表:

# crontab -l
# crontab -u username –l


下面的命令用于删除crontab作业
#删除当前的cron作业#

crontab –r

##删除特定用户的作业。必须以root用户身份运行##

crontab -r -u username

/ etc / crontab是系统的crontab文件。它仅供root用户用于系统作业的配置。

如何使用我自己的cron作业或脚本?
下面的脚本用于检查特定端口是否关闭,或者如果是,那么您将收到有关它的电子邮件通知。这个脚本放在/var/spool中然后你必须通过下面的表达式调用脚本,这个表达式将在每分钟执行一次cron。

*/10 * * * * sh /var/spool/apache.sh
#!/usr/bin/env bash
SERVER=pdf-lib.org
PORT=80
</dev/tcp/$SERVER/$PORT
if [ "$?" -ne 0 ]; then
echo "" | mail -s "Server Down" abc@gmail.com
exit 1
else
exit 0
fi
分享到:

发表评论

评论列表