필요에 따라 시간과 날짜를 다양한 포맷으로 출력하는 명령어이다.
date는 시간과 날짜를 알려 준다. 만일 옵션이 없으면, 시스템의 현재 시간과 날짜를 보여주며, +로 시작되는 옵션이 있으면 지시하는 형태대로 보여주게된다.
기본 출력은 다음과 같다.
%j는 현 시스템의 년도에서 오늘 날짜까지 며칠이 지났는지 알 수 있다.
%H는 현재의 시간을 24시간제로 보여주며,%M은 분을 보여준다.
또한 다음과 같은 방법으로 오늘 날짜의 연월일을 형식을 지정하여 표현할 수도 있다.
--date 옵션으로 현재 시간에 15일 후의 날짜를 알 수 있다.
그럼, 현재 시간에서 3년 2개월 전은 날짜가 어떻게 될까?
또한 이와 같은 날짜의 출력 결과를 다냥한 포맷으로 출력할 수 있다. 이 포맷을 다양하게 조합하여 자기만의 출력 결과를 만들 수도 있으며, 셸 스크립트와 cron을 이용하여 백업이나 기타 작업을 할 때 셸 스크립트에서 date 명령을 이용하여 작업한 날짜와 시간의 이름으로 파일을 만들도록 지정할 수도 있다.
사용법 : date [옵션] [+포맷] [날짜] -d, --date date : 지정한 date 값과 같이 시간과 날짜를 보여준다. -f, --file=datedate : 지정한 날짜 파일에서 각각의 줄에 대한 날짜를 보여준다. -I, --iso-8601[=TIMESPEC] : ISO-8601 포맷으로 보여준다. 만일 timespec를 지정하였다면, 날짜나 시, 분, 초에 대한 값 중 하나를 보여준다. -r, --reference=FILE : 지정한 파일이 마지막으로 수정된 날짜를 보여준다. -R, --rfc-822 : RFC-822 데이트 문자열로 보여준다. -s, --set=STRING : 지정한 string으로 시간을 맞춘다. --version : 버전정보를 보여준다.
date는 시간과 날짜를 알려 준다. 만일 옵션이 없으면, 시스템의 현재 시간과 날짜를 보여주며, +로 시작되는 옵션이 있으면 지시하는 형태대로 보여주게된다.
기본 출력은 다음과 같다.
# date 2002. 07. 01. (월) 20:09:50 KST
%j는 현 시스템의 년도에서 오늘 날짜까지 며칠이 지났는지 알 수 있다.
# date +%j 182
%H는 현재의 시간을 24시간제로 보여주며,%M은 분을 보여준다.
또한 다음과 같은 방법으로 오늘 날짜의 연월일을 형식을 지정하여 표현할 수도 있다.
# date +%H%M 2009 # date +%Y-%m-%d 2002-07-10
--date 옵션으로 현재 시간에 15일 후의 날짜를 알 수 있다.
# date --date '15 days day' 2002. 07. 17. (수) 20:18:24 KST
그럼, 현재 시간에서 3년 2개월 전은 날짜가 어떻게 될까?
# date --date '3years 2months ago' 1999. 05. 01. (토) 20:19:48 KST
또한 이와 같은 날짜의 출력 결과를 다냥한 포맷으로 출력할 수 있다. 이 포맷을 다양하게 조합하여 자기만의 출력 결과를 만들 수도 있으며, 셸 스크립트와 cron을 이용하여 백업이나 기타 작업을 할 때 셸 스크립트에서 date 명령을 이용하여 작업한 날짜와 시간의 이름으로 파일을 만들도록 지정할 수도 있다.
% % 문자 그 자체 - 필드를 채우지 않는다.(기본적으로 0으로 채운다) _ 필드를 공백으로 채운다. n 줄바꿈 t 수평 탭 시간 필드: %H 시 (00..23) %I 시 (01..12) %k 시 ( 0..23) %l 시 ( 1..12) %M 분 (00..59) %p 로케일의 AM 또는 PM %r 시간, 12-시간제 (hh:mm:ss [AP]M) %s 1970-01-01 00:00:00 UTC (비표준 확장기능)로 부터 경과된 초 %S 초 (00..61) %T 시간, 24-시간 (hh:mm:ss) %X 로케일에서 정의한 시간 표현(%H:%M:%S) %Z 시간대 (에, EDT), 시간대를 결정할 수 없는 때는 아무 값도 출력하지 않는다. 날짜 필드: %a 로케일의 약식 요일 이름 (Sun..Sat) %A 로케일의 완전한 요일 이름, 가변 길이 (Sunday..Sat- urday) %b 로케일의 약식 월 이름 (Jan..Dec) %B 로케일의 완전한 월 이름, 가변 길이 (January..Decem- ber) %c 로케일의 날짜와 시간 (Sat Nov 04 12:02:33 EST 1989) %d 월 중 일 (01..31) %D 날짜 (mm/dd/yy) %h %b 와 동일 %j 연 중 일 (001..366) %m 월 (01..12) %U 연 중 주 번호, 일요일을 주의 첫번째 날로 생각 (00..53) %w 요일 번호 (0..6), 0 은 일요일 %W 연 중 주 번호, 월요일을 주의 첫번째 날로 생각 (00..53) %x 로케일의 날짜 표현식 (mm/dd/yy) %y 연 중 일의 마지막 두 숫자 (00..99) %Y 연 (1970...)