- GNU dateを使用
- なんかもうちょっとスッキリと書けないものか...。
#!/bin/bash START_DATE="20201224" END_DATE="20210103" DATE_CMD="gdate" for (( DATE=${START_DATE} ; ${DATE} <= ${END_DATE} ; DATE=`${DATE_CMD} -d "${DATE} 1 day" '+%Y%m%d'` )) ; do TARGET_DATE=`echo ${DATE:0:4}-${DATE:4:2}-${DATE:6:2}` echo ${TARGET_DATE} done
実行結果
2020-12-24 2020-12-25 2020-12-26 2020-12-27 2020-12-28 2020-12-29 2020-12-30 2020-12-31 2021-01-01 2021-01-02 2021-01-03