쉘 스크립트 오늘 날짜 취득 date 사용 방법

쉘 스크립트에서 날짜를 취득하고 싶은 경우가 있습니다.

리눅스 환경에서 현재 날짜를 확인하고 싶은 경우 date 커맨드를 사용합니다.

쉘에서도 date를 사용해 날짜를 취득할 수 있습니다.

바로 사용 방법을 보겠습니다.

today=$(date "+%Y%m%d")
echo ${today}

 

실행 결과

$ 20201031

 

현재 날짜가 출력되었습니다.

date를 사용해 날짜를 취득할 때 날짜 포맷을 지정할 수 있습니다.

%Y%m%d를 지정했기 때문에 today변수에는 yyyymmdd 형태로 취득한 날짜를 저장했습니다.

쉘 스크립트에서 날짜를 취득하는 방법으로 아래와 같은 형태로 작성할 수도 있습니다.

today=`date "+%Y%m%d"`
echo ${today}

 

실행 결과는 첫 번째 샘플과 동일합니다.

이유는 정확히 모르겠지만 첫 번째 샘플처럼 $를 사용해 취득하는 것이 좋다는 얘기들을 합니다.

하지만 상황에 따라 $대신 `를 사용해야 하는 경우도 있으니 작성 방법을 알아두는 것이 좋습니다.

마지막으로 취득한 날짜를 문자열과 결합해서 사용하는 방법을 알아보겠습니다.

리눅스에서 쉘 스크립트를 사용하는 경우 문자열에 날짜를 붙여서 사용하는 경우가 많습니다.

샘플을 보도록 하겠습니다.

today=$(date "+%Y%m%d")
echo "sample_${today}.txt"

 

실행 결과

$ sample_20201031.txt

 

문자열과 취득한 날짜가 결합돼 문자열 형태로 출력되었습니다.

실제 파일이 생성된 것은 아닙니다.

취득한 날짜와 문자열이 결합된 것을 확인하기 위해 단지 출력한 것입니다.

 

정리

리눅스에서 날짜를 확인할 때 사용하는 date 커맨드로 쉘 스크립트에서도 날짜를 취득할 수 있습니다.

취득할 때에는 날짜 포맷 형태를 지정해 원하는 포맷으로 사용할 수 있습니다.

댓글