1. 问题描述
在shell 脚本中,需要产生一个指定范围的日期序列, 输入的数值为开始时间和结束时间,输出范围中的所有日期
如:
输入 20220528 20220606
输出为:
20220528
20220529
20220530
20220531
20220601
20220602
20220603
20220604
20220605
20220606
2. 实现方式
#!/bin/bash
startDate=$1
endDate=$2
while [[ $startDate -le $endDate ]]
do
echo $startDate
# 更新日期
startDate=`date -d "+1 day $startDate" +%Y%m%d`
done
3. 注意事项
如果想指定自己使用的日期显示格式,只需要修改脚本的 %Y%m%d
即可;
%Y%m%d
纯数字 如 20220606%Y-%m-%d
横线分隔 如 2022-06-06
欢迎大家留言一起讨论学习!