Linux内置的cron进程能帮我们实现这些需求,cron搭配shell脚本,非常复杂的指令也没有问题。
 
cron介绍
 
ASP站长网我们经常使用的是crontab命令是cron table的简写,它是cron的配置文件,也可以叫它作业列表,我们可以在以下文件夹内找到相关配置文件。
 
/var/spool/cron/ 目录下存放的是每个用户包括root的crontab任务,每个任务以创建者的名字命名
/etc/crontab 这个文件负责调度各种管理和维护任务。
/etc/cron.d/ 这个目录用来存放任何要执行的crontab文件或脚本。
我们还可以把脚本放在/etc/cron.hourly、/etc/cron.daily、/etc/cron.weekly、/etc/cron.monthly目录中,让它每小时/天/星期、月执行一次。
 
crontab的使用
 
        我们常用的命令如下:
 
crontab [-u username]    //省略用户表表示操作当前用户的crontab
   -e      (编辑工作表)
   -l      (列出工作表里的命令)
   -r      (删除工作作)
 
        我们用crontab -e进入当前用户的工作表编辑,是常见的vim界面。每行是一条命令。
 
crontab的命令构成为 时间+动作,其时间有分、时、日、月、周五种,操作符有
 
* 取值范围内的所有数字
 
/ 每过多少个数字
 
- 从X到Z
 
,散列数字
 
        具体的用cat /etc/crontab可以看一下它的配置文件,可以看到代码的具体格式跟要求就跟下面一样
 
# 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
 
实例
 
实例1:每1分钟执行一次myCommand
 
* * * * * myCommand
 
实例2:每小时的第3和第15分钟执行
 
3,15 * * * * myCommand
 
实例3:在上午8点到11点的第3和第15分钟执行
 
3,15 8-11 * * * myCommand
 
实例4:每隔两天的上午8点到11点的第3和第15分钟执行
 
3,15 8-11 */2  *  * myCommand
 
实例5:每周一上午8点到11点的第3和第15分钟执行
 
3,15 8-11 * * 1 myCommand
 
实例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
 
        下面就具体实验一下这个命令把!
 
        首先使用date命令获取一下当前的系统时间,已经获取到了系统的时间19时5分
 
 
 
        接下来使用crontab -e命令进入对定时工作列表的文件当中,是一个类似于vim编辑器的一个界面,这边没有加上u选项,如果想指定用户的话加上-u然后指定用户名.但前提是执行的命令不是以交互形式来执行命令,而且指定用户必须对执行的代码拥有执行权限,否则设置了等于没有设置.如果不指定用户名的话,系统默认实行用户为当前用户

dawei

【声明】:九江站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。