关于crontab的安装请参考:
Linux中Crontab(定时任务)安装及配置详解。
(1) cron(crond)先容:

crond是linux下用来周期性实行某种任务或等待处理某些事宜的一个守护进程,crond进程启动后,会每分钟定期检讨是否有要实行的任务,如果有要实行的任务,则自动实行该任务。
我们常常利用的是crontab命令是cron table的简写,它是cron的配置文件,也可以叫它作业列表,我们可以在以下文件夹内找到干系配置文件。
补充:
Linux下的任务调度分为两类,系统任务调度和用户任务调度。
(2) 配置文件:
/etc/cron.deny:
该文件中所列用户不许可利用crontab命令。
/etc/cron.allow
该文件中所列用户许可利用crontab命令。
/etc/cron.d/:
这个目录用来存放任何要实行的crontab文件或脚本。
系统任务调度:系统周期性所要实行的事情,比如写缓存数据到硬盘、日志清理等。
/etc/crontab文件便是系统任务调度的配置文件。
/etc/crontab:
这个文件卖力调度各种管理和掩护任务。
用户任务调度:用户定期要实行的事情,比如用户数据备份、定时邮件提醒等。
所有用户定义的crontab 文件都被保存在/var/spool/cron目录中。
其文件名与用户名同等。
/var/spool/cron/:
目录下存放的是每个用户包括root的crontab任务,每个任务以创建者的名字命名。
补充:
还可以把脚本放在/etc/cron.hourly、/etc/cron.daily、/etc/cron.weekly、/etc/cron.monthly目录中,让它每小时/天/星期/月实行一次。
(3)crontab文件的含义:
用户所建立的crontab文件中,每一行都代表一项任务,每行的每个字段代表一项设置,它的格式共分为六个字段,前五段是韶光设定段,第六段是要实行的命令段。
格式如下:
minute hour day month week command
个中:
minute:表示分钟,可以是从0到59之间的任何整数。
hour:表示小时,可以是从0到23之间的任何整数。
day:表示日期,可以是从1到31之间的任何整数。
month:表示月份,可以是从1到12之间的任何整数。
week:表示星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日。
command:要实行的命令,可以是系统命令/自己编写的脚本文件。
在以上各个字段中,还可以利用以下分外字符:
:代表所有可能的值。
例如:month字段如果是星号,则表示在知足其它字段的制约条件后每月都实行该命令操作。
,:可以用逗号隔开的值指定一个列表范围。
例如:\"大众1,2,5,7,8,9\公众
-:可以用整数之间的中杠表示一个整数范围。
例如:\公众2-6\"大众表示\"大众2,3,4,5,6\"大众
/:可以用正斜线指定时间的间隔频率。
例如:\"大众0-23/2\"大众表示每两小时实行一次。
(3) crontab命令详解
格式:
crontab [-u username]
参数:
-e:编辑事情表
-l:列出事情表里的命令
-r:删除事情
补充:
省略用户表表示操作当前用户的crontab。
功能:
在固定的间隔韶光实行指定的系统指令/脚本。
常用周期性的日志剖析或数据备份等事情。
(4)操作crontab文件
crontab -e进入当前用户的事情表编辑,是常见的vim界面。
1、新建crontab
每天的早9点到晚5点打印date到掌握台
#echo the date to the console every 30minute between 9pm and 5am
0,30 09-17 /bin/echo `date` > /dev/console
2、列出crontab文件
crontab -l
3、 备份
crontab -l > ~/mycron
4、 删除
5、 规复
crontab ~/mycron
补充:
规复的两种办法
刚刚我们备份到家目录下一个mycron文件
办法1:
将其mycron拷贝到/var/spool/cron/<username>,个中<username>是用户名。
办法2:
如果由于权限问题无法完成拷贝,可以用crontab <filename>
(4)、补充一些实用的实例
以下的youCommand代表的是你自己定义的命令。
案例1:
每1分钟实行一次
youCommand
案例2:
每小时的第3和第15分钟实行
3,1
Linux中Crontab定时任务大略讲解
关于crontab的安装请参考:
Linux中Crontab(定时任务)安装及配置详解。
(1) cron(crond)先容:
crond是linux下用来周期性实行某种任务或等待处理某些事宜的一个守护进程,crond进程启动后,会每分钟定期检讨是否有要实行的任务,如果有要实行的任务,则自动实行该任务。
我们常常利用的是crontab命令是cron table的简写,它是cron的配置文件,也可以叫它作业列表,我们可以在以下文件夹内找到干系配置文件。
补充:
Linux下的任务调度分为两类,系统任务调度和用户任务调度。
(2) 配置文件:
/etc/cron.deny:
该文件中所列用户不许可利用crontab命令。
/etc/cron.allow
该文件中所列用户许可利用crontab命令。
/etc/cron.d/:
这个目录用来存放任何要实行的crontab文件或脚本。
系统任务调度:系统周期性所要实行的事情,比如写缓存数据到硬盘、日志清理等。
/etc/crontab文件便是系统任务调度的配置文件。
/etc/crontab:
这个文件卖力调度各种管理和掩护任务。
用户任务调度:用户定期要实行的事情,比如用户数据备份、定时邮件提醒等。
所有用户定义的crontab 文件都被保存在/var/spool/cron目录中。
其文件名与用户名同等。
/var/spool/cron/:
目录下存放的是每个用户包括root的crontab任务,每个任务以创建者的名字命名。
补充:
还可以把脚本放在/etc/cron.hourly、/etc/cron.daily、/etc/cron.weekly、/etc/cron.monthly目录中,让它每小时/天/星期/月实行一次。
(3)crontab文件的含义:
用户所建立的crontab文件中,每一行都代表一项任务,每行的每个字段代表一项设置,它的格式共分为六个字段,前五段是韶光设定段,第六段是要实行的命令段。
格式如下:
minute hour day month week command
个中:
minute:表示分钟,可以是从0到59之间的任何整数。
hour:表示小时,可以是从0到23之间的任何整数。
day:表示日期,可以是从1到31之间的任何整数。
month:表示月份,可以是从1到12之间的任何整数。
week:表示星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日。
command:要实行的命令,可以是系统命令/自己编写的脚本文件。
在以上各个字段中,还可以利用以下分外字符:
:代表所有可能的值。
例如:month字段如果是星号,则表示在知足其它字段的制约条件后每月都实行该命令操作。
,:可以用逗号隔开的值指定一个列表范围。
例如:\"大众1,2,5,7,8,9\"大众
-:可以用整数之间的中杠表示一个整数范围。
例如:\公众2-6\"大众表示\公众2,3,4,5,6\"大众
/:可以用正斜线指定时间的间隔频率。
例如:\"大众0-23/2\"大众表示每两小时实行一次。
(3) crontab命令详解
格式:
crontab [-u username]
参数:
-e:编辑事情表
-l:列出事情表里的命令
-r:删除事情
补充:
省略用户表表示操作当前用户的crontab。
功能:
在固定的间隔韶光实行指定的系统指令/脚本。
常用周期性的日志剖析或数据备份等事情。
(4)操作crontab文件
crontab -e进入当前用户的事情表编辑,是常见的vim界面。
1、新建crontab
每天的早9点到晚5点打印date到掌握台
#echo the date to the console every 30minute between 9pm and 5am
0,30 09-17 /bin/echo `date` > /dev/console
2、列出crontab文件
crontab -l
3、 备份
crontab -l > ~/mycron
4、 删除
5、 规复
crontab ~/mycron
补充:
规复的两种办法
刚刚我们备份到家目录下一个mycron文件
办法1:
将其mycron拷贝到/var/spool/cron/<username>,个中<username>是用户名。
办法2:
如果由于权限问题无法完成拷贝,可以用crontab <filename>
(4)、补充一些实用的实例
以下的youCommand代表的是你自己定义的命令。
案例1:
每1分钟实行一次
youCommand
案例2:
每小时的第3和第15分钟实行
3,15 youCommand
案例3:
在上午8点到11点的第3和第15分钟实行
3,15 8-11 youCommand
案例4:
每隔两天的上午8点到11点的第3和第15分钟实行
3,15 8-11 /2 youCommand
案例5:
每周一上午8点到11点的第3和第15分钟实行
3,15 8-11 1 youCommand
案例6:
每晚的21:30重启smb
30 21 /etc/init.d/smb restart
案例7:
每月1、10、22日的4 : 45重启smb
45 4 1,10,22 /etc/init.d/smb restart
案例8:
每周六、周日的1 : 10重启smb
10 1 6,0 /etc/init.d/smb restart
案例9:
每天18 : 00至23 : 00之间每隔30分钟重启smb
0,30 18-23 /etc/init.d/smb restart
案例10:
每星期六的晚上11 : 00 pm重启smb
0 23 6 /etc/init.d/smb restart
案例11:
每一小时重启smb
/1 /etc/init.d/smb restart
案例12:
晚上11点到早上7点之间,每隔一小时重启smb
23-7/1 /etc/init.d/smb restart
欢迎大家给予宝贵的见地或者建议。
欢迎大家补充或者共享一些其他的方法。
感谢支持。
5 youCommand
案例3:
在上午8点到11点的第3和第15分钟实行
3,15 8-11 youCommand
案例4:
每隔两天的上午8点到11点的第3和第15分钟实行
3,15 8-11 /2 youCommand
案例5:
每周一上午8点到11点的第3和第15分钟实行
3,15 8-11 1 youCommand
案例6:
每晚的21:30重启smb
30 21 /etc/init.d/smb restart
案例7:
每月1、10、22日的4 : 45重启smb
45 4 1,10,22 /etc/init.d/smb restart
案例8:
每周六、周日的1 : 10重启smb
10 1 6,0 /etc/init.d/smb restart
案例9:
每天18 : 00至23 : 00之间每隔30分钟重启smb
0,30 18-23 /etc/init.d/smb restart
案例10:
每星期六的晚上11 : 00 pm重启smb
0 23 6 /etc/init.d/smb restart
案例11:
每一小时重启smb
/1 /etc/init.d/smb restart
案例12:
晚上11点到早上7点之间,每隔一小时重启smb
23-7/1 /etc/init.d/smb restart
欢迎大家给予宝贵的见地或者建议。
欢迎大家补充或者共享一些其他的方法。
感谢支持。