分 时 日 月 周

为当前用户创建cron服务

1.键入 crontab -e编辑crontab服务文件

cron 是Linux的一个定时执行工具,(相当于Windows下的scheduled task)

service crond start 启动服务

service crond stop

restart 重启服务

reload重新载入配置

开机自启动将服务在系统启动时候自动启动

/etc/rc.d/rc.local这个脚本末尾加上

service crond start

2.cron服务提供crontab命令来设定cron服务的,以下是这个命令的一些参数与说明:

crontab -u //设定某个用户的cron服务,一般root用户在执行这个命令的时候需要此参数

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

crontab -r //删除某个用户的cron服务

crontab -e //编辑某个用户的cron服务

3.查看cron的定时任务

crontab -u root -l

再例如: root 像删除fred账号的cron设置,crontab -u fred -r

在编辑cron服务时候,编辑的内容有一些格式和约定,输入

crontab -u root -e进入编辑模式,编辑的内容一定要符合下面的格式

例如

*/1 * * * * ls >> /tmp/ls.txt

这个格式的前一部分是对时间的设定,后面一部分是要执行的命令,如果要执行的命令太多,可以把这些命令写进脚本里面,然后直接调用脚本就可以了,调用的时候写出命令的完整路径。

格式如下:分时日月周

# For details see man 4 crontabs

# Example of job definition:

# .—————- minute (0 – 59)

# | .————- hour (0 – 23)

# | | .———- day of month (1 – 31)

# | | | .——- month (1 – 12) OR jan,feb,mar,apr …

# | | | | .—- day of week (0 – 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat

# | | | | |

# * * * * * user-name command to be executed

47 * * * * root /bin/sh /root/test.sh

4.语法

分钟(0-59)

小時(0-23)

日期(1-31)

月份(1-12)

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

同时记住如下特殊号的含义:

“*” 代表取值范围内的数字

“/” 代表每,

“-”代表从某个数字到某个数字

“,” 分开几个离散的数字,用来连接不连接的时间段

crontab -e 命令来编辑,编辑是/var/spool/cron 下对应的用户的cron的文件,也可以是直接修改/etc/crontab文件

任务调度设置文件的写法:

语法格式如下:

Minute Hour Day Month Dayofweek command

分时日月周

每个字段代表的含义如下:

Minute 每个小时的第几分钟执行该任务 Hour 每天的第几个小时执行该任务

Day 每月的第几天执行该任务

Month 每年的第几个月执行该任务

DayOfWeek 每周的第几天执行该任务

Command 指定要执行的程序

mon=Monday

tues=Tuesday

wed=Wednesday

thur=Thursday

fri=Friday

sat=Saturday

sun=Sunday

一月份=JAN. Jan.=January

二月份=FEB. Feb.=February

三月份=MAR. Mar.=March

四月份=APR. Apr.=April

五月份=MAY May=May

六月份=JUN. Jun.=June

七月份=JUL. Jul.=July

八月份=AUG. Aug.=August

九月份=SEP. Sept.=September

十月份=OCT. Oct.=October

十一月份=NOV. Nov.=November

十二月份=DEC. Dec.=December

在这些字段里,除了“Command”是每次都必须指定的字段以外,其它字段皆为可选

例子:

5 * * * * ls 指定每小时第5分钟执行一次ls命令

30 5 * * * ls指定每天5点30执行一次

30 7 8 * * ls指定每月8号7:30分执行ls命令

30 5 8 6 * ls每年6月8日5:30 执行ls命令

30 6 * * 0 ls 每周天6:30执行ls命令

30 3 10,20 * * ls 表示每月10,20号3:30执行一次.

25 8-11 * * * ls 表示每天8-11点的第25分钟执行ls命令.

*/15 * * * * 每隔15分钟执行一次ls命令[即是每个小时0,15,30,45,60分钟执行ls命令]

30 6 */10 * * *每个月中每隔10天6:30执行一次ls命令[即每月1,11,21,31]的6:30 执行一次ls命令

5.新增调度任务

1)新增调度任务有两种方法:

在命令行中输入crontab -e然后执行添加相应的任务,wq存盘保存退出

2)直接编辑/etc/crontab文件,即vi /etc/crontab添加相应的任务

6.查看调度任务

crontab -l //列出当前的所有调度任务

crontab -l -u jp //列出用户jp的所有调度任务

7.删除任务调度工作

crontab -r //删除所有任务调度工作

8.任务调度执行结果的转向

例1:每天5:30执行ls命令,并把结果输出到/jp/test文件中 30 5 * * * ls >/jp/test 2>&1

注:2>&1 表示执行结果及错误信息。

限 时 特 惠: 本站每日持续更新海量各大内部创业教程,一年会员只需98元,全站资源免费下载 点击查看详情
站 长 微 信: lzxmw777

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注