Linux基础知识[2]【延迟及定时机制】

1.系统延迟任务发起命令 at

[root@VM_225_102_centos mnt]# at 20:50
at> touch zty.txt
at> <EOT> #ctrl+D退出编辑。
job 1 at Wed Jul  6 20:50:00 2016
[root@VM_225_102_centos mnt]# at -l    查看当前延迟任务
1 Wed Jul  6 20:50:00 2016 a root

[root@VM_225_102_centos mnt]# atrm 1 #删除编号为1的延迟任务。
[root@VM_225_102_centos mnt]# at -l


发起方式2:

[root@VM_225_102_centos mnt]# at now+1min ##任务延迟一分钟执行
at> rm -fr /mnt/*
at> <EOT> ##ctrl+D发起任务
job 2 at Sat Nov  7 11:04:00 2015

------------------------------------------------------------------------------

=============================================

at命令的使用控制


[root@acl-host ~]# vim /etc/at.deny ##默认存在于系统中,在此列表中出现的用户被禁止
[root@acl-host ~]# vim /etc/at.allow ##默认不存在于系统中,但当此文件存在时,deny文件失效;所有普通用户执行at的权利被禁止,只有在此列表中出现的用户允许执行at命令


=================================================================================================================================


Linux下的任务调度分为两类,系统任务调度和用户任务调度


[root@VM_225_102_centos mnt]# cat /etc/crontab 
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root


# 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

命令参数:

-u user:用来设定某个用户的crontab服务,例如,“-u ixdba”表示设定ixdba用户的crontab服务,此参数一般有root用户来运行。

file:file是命令文件的名字,表示将file做为crontab的任务列表文件并载入crontab。如果在命令行中没有指定这个文件,crontab命令将接受标准输入(键盘)上键入的命令,并将它们载入crontab。

-e:编辑某个用户的crontab文件内容。如果不指定用户,则表示编辑当前用户的crontab文件。

-l:显示某个用户的crontab文件内容,如果不指定用户,则表示显示当前用户的crontab文件内容。

-r:从/var/spool/cron目录中删除某个用户的crontab文件,如果不指定用户,则默认删除当前用户的crontab文件。

-i:在删除用户的crontab文件时给确认提示。

实例1:每1分钟执行一次command

命令:

* * * * * command

 

实例2:每小时的第3和第15分钟执行

命令:

3,15 * * * * command

 

实例3:在上午8点到11点的第3和第15分钟执行

命令:

3,15 8-11 * * * command

 

实例4:每隔两天的上午8点到11点的第3和第15分钟执行

命令:

3,15 8-11 */2 * * command

 

实例5:每个星期一的上午8点到11点的第3和第15分钟执行

命令:

3,15 8-11 * * 1 command

 

实例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

 

实例13每月的4号与每周一到周三的11点重启smb 

命令:

0 11 4 * mon-wed /etc/init.d/smb restart

 

实例14:一月一号的4点重启smb 

命令:

0 4 1 jan * /etc/init.d/smb restart

实例15:每小时执行/etc/cron.hourly目录内的脚本

命令:

01   *   *   *   *     root run-parts /etc/cron.hourly


 

 







posted @ 2016-07-06 21:27  aallennty  阅读(103)  评论(0编辑  收藏  举报