티스토리 뷰

리눅스에서 사용할 수 있는 date 명령어를 정리해 보도록 하겠습니다. 

date 명령어는 날짜와 관련된 처리를 할 수 있는데요. 날짜 출력이나 날짜 설정 등의 작업을 할 수 있습니다. 

로그 파일 등을 처리하는 쉘 프로그래밍에서도 유용하게 사용할 수 있습니다. 


날짜 포맷에 따라 출력하기

먼저 날짜 포맷으로 출력하는 부분을 살펴보도록 하지요. 

date라는 명령어를 입력해 보면 다음과 같이 나타납니다. 

> date
Mon Aug 6 12:51:42 KST 2012


여기에 날짜 포맷으로 출력하기 위해 + 기호를 사용해봤습니다. 

> date +%Y-%m-%d
2012-08-06


년도-월-일의 순서대로 출력하도록 포맷을 지정한 것입니다. 

이와 같이 지정할 수 있는 것은 다음과 같습니다. 



내용을 살펴보면 왠만한 날짜 표현은 모두 가능합니다. 

다만, java에서 날짜 형식 변경을 위한 SimpleDateFormat에 대한 간략한 정리~ 글과 비교해 보면 

표현식이 조금 다르다는 것도 알 수 있습니다.


자 위 내용은 오늘 날짜를 지정한 것이구요. 

만약 어제 날짜를 기준으로 표시한다면 어떻게 할까요? 

-d 옵션을 사용해서 다음과 같이 문자열로 지정하면 됩니다. 


> date -d yesterday +%Y-%m-%d
2012-08-05


만약 특정 날짜를 지정하고 싶으면 문자열로 다음과 같이 사용할 수 있습니다. 

7월 10일이 1년 중 몇 주에 해당하는지 출력하는 문장이 되겠죠. 


> date -d 2012-07-10 +%V
28


날짜 설정하기

date 명령어로 날짜를 설정할 수도 있습니다. 


> date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]


설정할 날짜를 MMDDhhmm[[cc]YY][.ss] 형태로 지정할 수 있습니다. 

즉, 2012년 7월 10일로 날짜를 설정할 경우 다음과 같이 지정할 수 있습니다. 


> date 0710000012
Tue Jul 10 00:00:00 KST 2012


그러나 보통은 이렇게 바꾸지 않고 표준시로 설정하는 경우가 대부분일 것 같습니다. 

표준시로 맞추기 위해서는 rdate라는 명령어를 사용하는데요. 

먼저 다음과 같이 설치할 수 있습니다. 


> apt-get install rdate


마지막으로 표준시와 시간을 맞춥니다. 


> rdate -s time.bora.net
> date
Mon Aug 6 13:10:24 KST 2012


댓글
댓글쓰기 폼