본문 바로가기
학습장/ETC

Bash shell date 반복문

by daedoo_ 2021. 4. 5.

Bash shell date 활용한 반복문 샘플입니다.

ex. 시작월(YYYYMM) ~ 종료월(YYYYMM) 입력하여 월별 반복수행

#!/bin/bash

if [ $# -ne 2 ]; then
  echo "usage: $0 startYM endYM"
  exit 1
fi

startYm=`date -d $1"01" +'%Y-%m-%d'`
endYm=`date -d $2"01 + 1 month" +'%Y-%m-%d'`

while [ "$startYm" != "$endYm" ];
do
    echo `date -d "$startYm" +"%Y"` `date -d "$startYm" +"%m"` ":" $startYm "~" `date -d "$startYm + 1 month" +"%Y-%m-%d"`
    # ...    
    startYm=`date -d "$startYm + 1 month" +'%Y-%m-%d'`;

done

수행결과

$ ./test_loop 202001 202104

2020 01 : 2020-01-01 ~ 2020-02-01
2020 02 : 2020-02-01 ~ 2020-03-01
2020 03 : 2020-03-01 ~ 2020-04-01
2020 04 : 2020-04-01 ~ 2020-05-01
2020 05 : 2020-05-01 ~ 2020-06-01
2020 06 : 2020-06-01 ~ 2020-07-01
2020 07 : 2020-07-01 ~ 2020-08-01
2020 08 : 2020-08-01 ~ 2020-09-01
2020 09 : 2020-09-01 ~ 2020-10-01
2020 10 : 2020-10-01 ~ 2020-11-01
2020 11 : 2020-11-01 ~ 2020-12-01
2020 12 : 2020-12-01 ~ 2021-01-01
2021 01 : 2021-01-01 ~ 2021-02-01
2021 02 : 2021-02-01 ~ 2021-03-01
2021 03 : 2021-03-01 ~ 2021-04-01
2021 04 : 2021-04-01 ~ 2021-05-01

 

'학습장 > ETC' 카테고리의 다른 글

M1 Mac anaconda 설치  (4) 2022.10.20
Oracle DBA성 쿼리  (3) 2022.09.25
M1 Mac 윈도우10 설치  (2) 2021.07.14
python 외부 스크립트 import  (0) 2021.04.12
CSV 파일 분할하기  (0) 2021.02.18

댓글