定时任务 CROND (守护进程)
程序 : 静止
进程 : 动态
crontab 设置命令
-l : list 列表
-e : 编辑
-r : 删除
-i : 删除前确认
-u : 指定操作用户
[[email protected] ~]# chkconfig --list crond #可以查看 crond 是否运行 [[email protected] cron]# crontab -e #编辑 定时文件 ############ #输入若干# [[email protected] cron]# crontab -l #查看定时任务 ########## [[email protected] cron]# cat /var/spool/cron/root #定时任务相对应的文件,不同用户对应不同文件名 ##########
[[email protected] cron]# ls -l `which crontab` # crontab 命令具有 SetUID 权限 -rwsr-xr-x. 1 root root 51784 3月 30 2015 /usr/bin/crontab
[[email protected] cron]# cat /etc/crontab #定时任务的基本格式
分钟 minute (0 - 59) 小时hour (0 - 23) 天day of month (1 - 31) 月month (1 - 12) 周 day of week (0 - 6) (0 代表周日)
" * " 代表 ‘每‘ 的意思 5 * * * * #每五分钟执行一次命令
00 23 * * * #每天23点执行命令
" - " 代表范围 00 17-19 * * * #每天17 18 19点整数点执行
" , " 代表分隔 30 17,18,19 * * * #每天 17:30 18:30 19:30 执行
" /n " 代表每单位时间 */n * * * * #每10分钟进行执行
30 3-5,17-19 * * * #每天的3:30 4:30 5:30 17:30 18:30 19:30执行
30 */6 * * * #每隔 6 个小时的半点时刻
30 8-18/2 * * * #每天 8 点到 18 点每隔 2 个小时的半点时刻
30 21 * * * #每天的 21:30 执行
45 4 1,10,22 * * #每月 1 号 10 号 22 号的 4:45 执行
10 1 * * 6,0 #每周六周日 1:10 执行
0,30 18-23 * * * #每天18至23点之间,每间隔30分钟重启
00 */n * * * #每隔 1 小时的整点
00 11 * 4 1-3 #4月的每周1,2,3的11点整
练习 : 每分钟在 /server/log/haha 中打印 haha 的全拼 (在命令中先测试成功,然后添加定时任务)
[[email protected] ~]# crontab -e * * * * * echo "haha" >> /server/log/haha.txt #添加将要执行的命令 [[email protected] ~]# mkdir -p /server/log #为其创建目录 [[email protected] ~]# tail -f /server/log/haha.txt #跟踪一个文件(-f 动态查看) haha haha
小结 :
- 最好添加注释
- /server/log 目录需要事先存在
- 定时任务一定要使用绝对路径
- crond 服务必须开启运行
- 在命令行中先测试成功,在添加定时任务