linux命令之crontab 任务实时调度
任务调度的crontab常驻命令
crond是linux用来定期执行程序的命令
crontab每分钟 会定期检查是否又要执行的工作
如果有执行的工作
便会自动执行该工作
工作主要分为两类:
1、
系统执行的工作
系统周期性所要执行的工作,如备份、清理缓存
2、个人执行的工作
例如每隔十分钟检查邮箱服务器是否有信息,这些工作可有用户自己设置
crontab定时任务触发器
使用者权限记载在两个文件
文件
/etc/cron.deny
该文件中所列的用户不允许使用crontab命令
/etc/cron.allow
该文件中所列的用户允许使用crontab命令
crontab -i 删除crontab文件之前给个提示!
-i(prompt before deleting user's crontab)
-e 编辑文件
/etc/init.d/crond restart
crontab -e
输入 命令
eg:
1.0 */2 * * * /sbin/service httpd restart
意思是每两小时重启一次apache
2.50 7 * * * /sbin/service sshd start 意思是每天7:50开启ssh服务
3.50 22 * * * /sbin/service sshd stop 每天22:50关闭ssh服务
4.0 0 1,15 * * fsck /home 每月1号和15号检查/home磁盘
5.1 * * * * /home/bruce/backup 每小时执行一次/home/bruce/backup这个文件
6.00 03 * * 1-5 find /home "*.xxx" -mtime+4 -exec rm {} /;
每周一至周五3点钟,在目录/home中 查找文件名为*.xxx的文件,并删除4天前的文件
7.30 6 */10 * * ls
每月的1、11、21、31日时的6:30执行一次ls命令
8.时刻表的格式
f1 f2 f3 f4 f5 program
f1分钟 f2小时 f3一个月份中的第几日 f4月份 f5一个星期中的第几天
program为执行的程序
9.f1 =* 表示每分钟都要执行program
f2=* 表示每小时都要执行程序
10.f1=a-b 从第a分钟到第b分钟时间段都在执行
11.f1=*/n 每隔n分钟执行程序
12.f4=jan-febf5=mon-wed
13.M H D m d cmd
14.d 0-6 0:星期天
默认输出在 /var/spool/mail/cloud(username) 里面
可以在命令里面改变重定向 输出到某个文件
例如:
*/1 * * * * date >> ~/date_result
可以每分钟的结果打印在date_result文件中,>>的意思是新的结果放在最下面补上