课程平台网站建设报价,公司做自己的网站平台台,网页制作素材图片百度云,智能科普网站平台建设方案crontab使用
一、crontab简介
crontab 这个指令所设置的工作将会循环的一直进行下去#xff01;可循环的时间为分钟、小时、每周、每月或每年等。crontab 除了可以使用指令执行外#xff0c;亦可编辑 /etc/crontab 来支持。 至于让 crontab 可以生效的服务则是 crond 这个服…crontab使用
一、crontab简介
crontab 这个指令所设置的工作将会循环的一直进行下去可循环的时间为分钟、小时、每周、每月或每年等。crontab 除了可以使用指令执行外亦可编辑 /etc/crontab 来支持。 至于让 crontab 可以生效的服务则是 crond 这个服务。
二、crontab配置 1关于crontab和crond 用到crontab那么就一定要知道crondcrond和crontab是不可分割的crond我的理解是一个守护进程或者说这才是我们定时任务的核心crontab是一个编辑或者说是管理定时任务的工具crontab。我的理解就是crond服务处于启动状态这个服务会默认每分钟去检测是否有需要执行的定时任务所以crond不能守护秒级定时任务。而这个任务的具体内容是通过crontab来管理的。 2安装 一般情况下crond、crontab是安装好的,这里主要提一下万一没有crontab你别想着直接用yum去安装crond或者crontab因为你会发现找不到包其实定时任务的包是cronie。 yum install -y cronie 这样就行了 关于crond和crondtab常用命令 3crond常用命令 systemctl start crond 启动服务 systemctl stop crond 停止服务 systemctl restart crond 重启服务 systemctl reload crond 重载配置文件 systemctl status crond 查看状态 4crontab常用命令 crontab -u 设定某个用户的cron服务 crontab -l 显示crontab文件(显示已设置的定时任务) crontab -e 编辑crontab文件(编辑定时任务) crontab -r 删除crontab文件(删除定时任务) crontab -i 删除crontab文件提醒用户(删除定时任务) 5三种编辑定时任务的方式 定时任务格式 SHELL/bin/bash PATH/sbin:/bin:/usr/sbin:/usr/bin MAILTOroot # For details see man 4 crontabs # Example of job definition: # .---------------- minute (0 - 59) # | .------------- hour (0 - 23) # | | .---------- day of month (1 - 31) # | | | .------- month (1 - 12) OR jan,feb,mar,apr ... # | | | | .---- day of week (0 - 6) (Sunday0 or 7) OR sun,mon,tue,wed,thu,fri,sat # | | | | | # * * * * * user-name command to be executed 用户的定时任务分6段,分别是分时日月周命令 第1列表示分钟159 每分钟用*或者 */1表示 第2列表示小时1230表示0点 第3列表示日期131 第4列表示月份112 第5列标识号星期060表示星期天 第6列要运行的命令 *表示任意时间都实际上就是“每”的意思。可以代表00-23小时或者00-12每月或者00-59分 -表示区间是一个范围00 17-19 * * * cmd就是每天17,18,19点的整点执行命令 ,是分割时段30 3,19,21 * * * cmd就是每天凌晨3和晚上19,21点的半点时刻执行命令 /n表示分割可以看成除法*/5 * * * * cmd每隔五分钟执行一次 1直接编辑配置文件 配置文件路径/etc/crontab 在配置文件中,原本6个段的配置我们需要在命令前面再加一个用户段 即分 时 日 月 周 用户 命令 直接添加到最后一行即可 2使用crontab -e 命令编辑 使用命令编辑相当于就是编辑当前用户的任务所以不需要加用户字段这里就是6段 * * * * * /home/wsj/scheduledTest.sh 3直接编辑目标文件 进入/var/spool/cron 如果你执行了以上两种方式你再进来看一下这个目录下的文件你可能会发现一点问题 这里的文件都是以用户名来命名的你再打开你使用crontab -e 添加过任务的用户文件原来crontab -e编辑的就是这里的文件所以我们如果需要为哪个用户添加任务只用编辑这个目录下对应用户的文件即可 4实例 * * * * * 每1分钟执行一次 15,30,45 * * * * 每小时的第15、30、45分执行 15,30 10-11 * * * 在上午10点到11点的第15和第30分钟执行 * */2 * * * 每两个小时执行一次 5相关文件 #该文件中所列用户不允许使用crontab命令 /etc/cron.deny # 该文件中所列用户允许使用crontab命令 /etc/cron.allow #所有用户crontab文件存放的目录,以用户名命名 /var/spool/cron/ # crond日志文件 /var/log/cron