Linux crontab计划任务应用

来源:互联网 发布:玖富微理财网络借贷 编辑:程序博客网 时间:2024/04/27 06:59
2. 计划任务应用
1. at:在指定时间执行指定的命令,执行完就从系统中取消该命令。 cron:在指定时间周期性的执行指定的命令。

注意:如果在要执行命令的那个时间,系统处于关机状态,那么该命令将在系统处于开机状态的下一个同样的时间执行此命令。比如∶用户要执行命令的时间是17:20,而发出at命令的时间是早上,那么系统究竟是在哪一天执行该命令呢?如果用户在17:20仍然在工作,那么该命令将在这个时候完成,如果用户17:20以前就关机了,那么该命令将在次日17:20执行(条件是系统必须开机);如用cron命令呢??


2. at

1. 命令:

 at //设置任务

 atq //查看目前的任务 

atrm //删除设定的任务 

语法: #at [-选项]时间格式 //设置任务

 #atq //查看目前的任务 

#atrm [number] //删除设定的任务

选项: m  : at 的工作完成后,会发email 给该用户。  时间格式主要有以下几种:   HH:MM在今天的 HH:MM 执行,若该时刻已超过,则明天HH:MM执行此工作。                 例:#at12:00 HH:MM YYYY-MM-DD 在某年某月的某一天某时刻执行该工作!

 例:#at 12:00 2006-12-30 HH:MM + number [minutes|hours|days|weeks] 就是說,在某个时间加上定义的时间之后执行。 


例: #at 12:00 + 1 days 2006-12-30

在输入at之后,就进入命令输入模式,这里你可以重复输入命令,退出的时候ctrl+D,就可以离开了。 at12:00 shutdown –h 0//今天的12点执行关机命令。 

#at 12:00 2006-12-30 tar czvf /dump/workdump.tar.gz/work/*  // 2006-12-30 12:00对/work目录下文件进行打包压缩 

#at 12:00 + 1 days 2006-12-30 rm   –rf/work/   // 2006-12-31 12:00删除/work目录

3. cron

1. cron:周期性的执行任务 语法: crontab [–选项] 

选项  

-u:只有root能执行的选项,指定一个用户名  

-l:列出crontab的内容  

-e:编辑crontab的内容  

-r删除


crontab的内容 service crondstart //启动服务

 #service crondrestart //重新启动服务

 #service crondstop //停止服务

 输入crontab –e 时,会自动打开VI画面,编辑文本的格式为:五个不同时间命令。

 五个不同时间如下表:  

 59 23 1 5 * 每年五月一日23点59分 

30 16 * * 6 每周六16点半执行 *号,代表所有时间都适用  

例: 每月1日12:00对系统日志进行备份  0 12 1 * * tar czvf /back/system.tgz  /var/log/* crontab是用户使用的 系统任务就不必运行crontab命令了 可以直接编辑/etc/crontab,

01 * * * * root run-parts /etc/cron.hourly 5个时间后面接的是root,代表的是执行的身份为root用户。 run-parts代表后面接的/etc/cron.hourly是一个目录内的所有可执行文件,(你可以到/etc目录下看看,系统本来就预设几个目录)也可以将每天要执行的命令直接写到/etc/cron.daily就行,就不需要使用crontab –e 。 建立一个/root/runcron的目 录,将要每隔5分钟执行的可执行文件放到该目录下,再在/etc/crontab文件中加  */5 * * * * root run-parts /root/runcron 就可以让系统每5分钟执行一次该目录下的所有可执行文件。


注意:在linux底下的crontab每分钟会自动读取一次/etc/crontab的工作,由于crontab是读到内存中的,所以在你修改完/etc/crontab之后,可能并不会马上执行,这时候要重新启动cron服务: #service crond restart
0 0
原创粉丝点击