쉘 스크립트에서,
한달된 로그파일들을 지워서 공간을 확보해 놓고 싶어서, 하나 만들었다.
su - test -c "rm -f /backup/db_backup_`date -d '1 month ago' +%Y%m`*.bak"
이렇게 하면, test 계정으로 들어가서,
(현재 4월임)
3월달에 만들어진 파일들(rm -f /backup/db_backup_201803*.bak)을 삭제한다.
date 에서 가져오고 싶은 날짜 찾는거는 밑에 퍼온거를 참조해서
아래와 같이 하면 된다.
날짜가 제대로 나오는지 확인해 보고 싶으면, echo로 아래와 같이 해보면 된다.
> echo `date -d '2 days ago' +%Y%m%d`
퍼온거
===========================================================================
과거
- date -d 'yesterday' # 어제
- date -d '1 day ago' # 1일전 = 어제
- date -d '2 day ago' # 2일전
- date -d '35 day ago' # 20일전
- date -d '1 week ago' # 1주일전
- date -d '2 month ago' # 1달전
- date -d '3 year ago' # 3년전
- date -d '10 second ago' # 10초전
- date -d '20 minute ago' # 20분전
- date -d '30 hour ago' # 30시간전
- date -d '3 year 7 month ago' # 3년 7개월전
미래
* 과거에서 ago 를 빼면 됨
- date -d 'tomorrow' # 내일
- date -d '1 day' # 1일후 = 내일
- date -d '2 day' # 2일후
- date -d '35 day' # 20일후
- date -d '1 week' # 1주일후
- date -d '2 month' # 1달후
- date -d '3 year' # 3년후
- date -d '10 second' # 10초후
- date -d '20 minute' # 20분후
- date -d '30 hour' # 30시간후
- date -d '3 year 7 month' # 3년 7개월후
요일 기준
- date -d 'this friday' # 이번주 금요일
- date -d 'last monday' # 지난 월요일
- date -d 'next tuesday' # 다음 화요일
특정 시간을 기준으로 날짜 더하고 빼기
- date -d '2010-01-03 07:32:10 + 2 day 5 hours 17 minute'
- # 2010년 1월 3일 7시 32분 10초를 기준으로 2일 5시간 17분후
옵션 1
-d 는 --date 옵션으로 사용해도 됩니다. --date 로 쓸때에는 --date= 형식으로 사용하시면 됩니다.
- date --date='2 month'
옵션 2
시간단위를 나타내는 day, week, month, year, second, minute, hour 등은 뒤에 s(복수)를 붙여도 되고 안붙여도 됩니다.
- date -d '1 day ago'
- date -d '1 days ago'
옵션 3
시간을 원하는 형식으로 뽑기위해서는 아래같이 하시면 됩니다.
현재 시간으로부터 2일전의 년-월-일 시:분:초 형식으로 표시하려면
- date '+%Y-%m-%d %H:%M:%S' -d '2 day ago'
쉘스크립트에서 해당 시간을 변수에 담기
보통 위와 같은 date 함수는 주로 쉘스크립트에서 사용하게 됩니다. 리눅스 명령으로 가져온 결과값을 변수에 담으려면
- yesterday=$(date -d '1 day ago')
또는
- yesterday=`date -d '1 day ago'`
변수를 사용할때는
- echo $yesterday
자료출저 : http://steadypost.net/post/knowhow/id/8/
============================================================================
날짜별로 log파일 만들때 유용하다.
'컴퓨터 > 리눅스 클라우드(AWS, GCP)' 카테고리의 다른 글
rsync 파일 백업하기 (0) | 2018.11.19 |
---|---|
crontab Log 크론탭 로그 (0) | 2018.08.28 |
리눅스 스케쥴 자동실행 cron 만들기 (0) | 2018.04.24 |
Nodejs 업그레이드 (0) | 2018.02.23 |
Nodejs 설치 (libv8.so.3 에러) (0) | 2018.02.22 |