##############################
Linux下的任务调度分为两类,系统任务调度和用户任务调度。 1,系统任务调度:系统周期性所要执行的工作,比如写缓存数据到硬盘、日志清理等。 在/etc/crontab文件,这个就是系统任务调度的配置文件。 2,用户任务调度:用户定期要执行的工作,比如用户数据备份、定时邮件提醒等。 用户可以使用 crontab 工具来定制自己的计划任务。 在crontab 文件都被保存在/var/spool/cron目录中。其文件名与用户名一致
##########################
1.系统定时任务:例如清理系统日志,清理系统缓存 -->不过多的关注 查询系统定时处理任务的路径: 路径1: cd /etc/logrotate.d/ -->可以写定时任务 less syslog 路径2: cat /etc/crontab -->不推荐使用,但是可以看格式 路径3: ls /etc/ | grep cron* anacrontab cron.d -->同路径2 ,可以写定时任务 cron.daily cron.deny -->控制普通用户使用定时任务crontab cron.hourly cron.monthly crontab cron.weekly 2.用户的定时任务 -->关注重点
##################################
前四行是用来配置crond任务运行的环境变量 第一行SHELL变量指定了系统要使用哪个shell,这里是bash 第二行PATH变量指定了系统执行命令的路径 第三行MAILTO变量指定了crond的任务执行信息将通过电子邮件发送给root用户 如果MAILTO变量的值为空,则表示不发送任务执行信息给用户 第四行的HOME变量指定了在执行命令或者脚本时使用的主目录。 星号(*):代表所有可能的值,如month字段为星号,则表示在满足其它字段的制约条件后每月都执行该命令操作。 逗号(,):可以用逗号隔开的值指定一个列表范围,例如,“1,2,5,7,8,9” 中杠(-):可以用整数之间的中杠表示一个整数范围,例如“2-6”表示“2,3,4,5,6” 正斜线(/):可以用正斜线指定时间的间隔频率,例如“0-23/2”表示每两小时执行一次。
小 结: 数字的表示最好用2为阿拉伯数字显示 周和日最好不要同时用 定时任务要加注解 可以定向到日志文件或者空文件 定时任务一定是绝对路径,且目录必须存在才能出结果 crontab 服务一定要开启运行
############################
0 0 * * * sh /root/autotest/hwtest/auto-del-log.sh 0 */3 * * * python3 /root/autotest/hwtest/hwtestpro/bbs/srun_bbs_test.py 0 */1 * * * python3 /root/autotest/hwtest/hwtestpro/bbs/url_main.py
零点零分执行,
每3小时0分执行一次
每1小时0分执行一次,
####################################
时间格式如下:
f1 f2 f3 f4 f5 program
解释:
f1 是表示分钟, 分钟(0-59)
f2 表示小时, 小时(0-23)
f3 表示一个月份中的第几日,一个月中的第几天(1-31)
f4 表示月份, 月份 (1 - 12)
f5 表示一个星期中的第几天。 星期中星期几 (0 - 7) (星期天 为0)
program 表示要执行的程序。
当 f1 为 * 时表示每分钟都要执行program,f2 为 * 时表示每小时都要执行程序,其馀类推
当 f1 为 a-b 时表示从第 a 分钟到第 b 分钟这段时间内要执行,f2 为 a-b 时表示从第 a 到第 b 小时都要执行,其馀类推
当 f1 为 */n 时表示每 n 分钟个时间间隔执行一次,f2 为 */n 表示每 n 小时个时间间隔执行一次,其馀类推
当 f1 为 a, b, c,... 时表示第 a, b, c,... 分钟要执行,f2 为 a, b, c,... 时表示第 a, b, c...个小时要执行,其馀类推
######################
crontab -l 表示列出所有的定时任务 crontab -r 表示删除用户的定时任务,当执行此命令后,所有用户下面的定时任务会被删除,执行crontab -l后会提示用户:“no crontab for admin”
crontab -e 表示编辑定时任务,
###################################
常用的命令展示 安装crontab:yum install crontabs crontab服务操作说明: /sbin/service crond start //启动服务 /sbin/service crond stop //关闭服务 /sbin/service crond restart //重启服务 /sbin/service crond reload //重新载入配置
查看crontab服务状态: service crond status
##########################################
####################################
-e (edit user‘s
crontab
)
-l (list user‘s
crontab
)
-r (delete user‘s
crontab
)