1.28
现在我们测试一下
间隔5s输出时间的脚本
cat cron.sh
date >> /home/lcy/lcy/1.txt
sleep 5s
date >> /home/lcy/lcy/1.txt
执行两次cron.sh的脚本
cat cron1.sh
bash cron.sh
bash cron.sh
crontab配置文件
每隔一分钟执行一次
*/1 * * * * bash /home/lcy/lcy/cron.sh
*/1 * * * * bash /home/lcy/lcy/cron.sh
现在把三个文件放在同一文件夹
bash cron1.sh
等待大约10s
echo "----------" >> 1.txt ##方便阅读
cat 1.txt
2021年 01月 28日 星期四 16:56:55 CST
2021年 01月 28日 星期四 16:57:00 CST
2021年 01月 28日 星期四 16:57:00 CST
2021年 01月 28日 星期四 16:57:05 CST
----------
crontab cron2.list ##注意此行命令会覆盖以前所有crontab配置 在使用前注意备份
tail -f 1.txt
2021年 01月 28日 星期四 16:56:55 CST
2021年 01月 28日 星期四 16:57:00 CST
2021年 01月 28日 星期四 16:57:00 CST
2021年 01月 28日 星期四 16:57:05 CST
----------
2021年 01月 28日 星期四 17:17:01 CST
2021年 01月 28日 星期四 17:17:01 CST
2021年 01月 28日 星期四 17:17:06 CST
2021年 01月 28日 星期四 17:17:06 CST
很明显可以发现crontab是并发执行的
crontab
例子:
# 每月的最后1天
0 0 L * * *
说明:
Linux
* * * * *
- - - - -
| | | | |
| | | | +----- day of week (0 - 7) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
| | | +---------- month (1 - 12) OR jan,feb,mar,apr ...
| | +--------------- day of month (1 - 31)
| +-------------------- hour (0 - 23)
+------------------------- minute (0 - 59)
字段 是否必填 允许值 允许特殊字符 备注
Seconds 是 0–59 *,- 标准实现不支持此字段。
Minutes 是 0–59 *,-
Hours 是 0–23 *,-
Day of month 是 1–31 *,-?LW ?LW只有部分软件实现了
Month 是 1–12 or JAN–DEC *,-
Day of week 是 0–7 or SUN–SAT *,-?L# ?L#只有部分软件实现了 Linux和Spring的允许值为0-7,0和7为周日 Quartz的允许值为1-7,1为周日
Year 否 1970–2099 *,- 标准实现不支持此字段。
使用方式
Linux: 0 /12 [user] [command]
crontab -e 编辑配置文件
crontab -l 查看所有配置文件