计划任务
1.at 在指定时间执行指定时间的命令,执行完成后就从系统中取消该命令。
at //设置任务
atq //查看目前的任务
atrm //删除设定的任务
文件:/etc/at.allow //允许使用at的用户列表
/etc/at.deny //禁止使用at的用户列表
目录:
/var/spool/at //存放at任务文件的目录
语法:
at [-选项] 时间格式 //设置任务
atq //查看目前的任务
atrm [number] //删除设定的任务
举例:
at 12:00 2006-12-30 在2006年12月30日12点执行
at 12:00 shutdown -h 0 今天的12点执行关机命令
at 12:00 2006-12-30 tar czvf /dump/workdump.tar.gz /work/* 意思是在规定时间对work目录下文件进行打包压缩
at 12:00 + 1 days 2006-12-30 rm -fr /work/ 在规定时间的后一天删除/work目录
启动服务:service atd start
重新启动服务:service atd restart
停止服务:service atd stop
2.cron 在指定的时间周期性的执行指定的命令。
命令:
/usr/bin/crontab //建立例行性的计划
/usr/sbin/crond //例行性计划任务的守护进程
文件:
/etc/cron.allow //将可以使用crontab的用户名写入其中,不在该文件内存在的用户则不可以使用crontab
/etc/cron.deny //将不可以使用crontab的用户名写入其中,不在该文件内存在的用户则可以使用crontab
*周期性的命令的记录会放在这个文件中 /var/log/cron
/var/spool/cron //存放用户周期性任务的目录
特殊字符 | 含义 |
* | 代表任何时间 |
, | 表示分隔时间的意思 |
- | 表示一段时间范围 |
/n | n为数字,意思是每个n个单位时间 |
Crontab是用户使用的命令,系统任务就不必运行命令了,可以直接编辑/etc/crontab
启动服务:service crond start
重新启动服务:service crond restart
停止服务:service crond stop
含义 | 分钟 | 小时 | 日期 | 月份 | 周 |
数字范围 | 0-59 | 0-23 | 1-31 | 1-12 | 0-6 |
举例:
59 23 1 5 * 每年五一23点59
30 16 * * 6 没周六16半执行
每天给老板发mail : 30 17 * * 1-5 mail boss < /home/test/report.txt
每月1日12:00对系统日志进行备份 : 0 12 1 * * tar czvf /back/system.tgz /var/log/*
*如果每天都执行几个命令,就需把命令写到/etc/cron.daily
系统每隔5分钟执行一次该目录下的所有可执行文件:
建立一个/root/runcron的目录,将要每隔5分钟的可执行文件放到该目录下,再在/etc/crontab文件中加*/5 * * * * root run-part /root/runcron
转载于:https://blog.51cto.com/7050297/1264845