原来一直记错了,今天又重新学习了一遍
| | | | | |
| | | | | + year [optional]
| | | | +----- day of week (0 - 7) (Sunday=0 or 7)
| | | +---------- month (1 - 12)
| | +--------------- day of month (1 - 31)
| +-------------------- hour (0 - 23)
+------------------------- min (0 - 59)
具体例子大家网上找,推荐一个crontab 的计算网站,在线工具
如何实现每隔5天执行脚本.
**注意: **
0 0 */5 * * * 这个是错误的!!!
0 0 */5 * * * 这个是错误的!!!
0 0 */5 * * * 这个是错误的!!!
重要的事情说三遍....
方法1:
自己创建一个文件,每天执行一次脚本,然后计算天数.当count>5 的时候,说明是第5天,可以执行脚本,然后重置时间.
count=$(cat counter_file)
count=$((count+1))
if [ $count -ge 5 ]
then
do stuff here / call another script
count=0
fi
echo $count >counter_file
方法2:
通过date --utc --date "$1" +%s
来获得今天(不是当前时间,是00:00:00)距离1970年的秒数,然后除以3600 再除以24 获得天数,然后取5的余数.
为0的话,说明正好过了5天,可以在脚本开始加入这个逻辑,然后脚本在crontab中每天执行判断一次.
0 0 1 * * *
每天 的00:00:00执行命令
网友评论