DATE(1L)

이름
date - 시스템 시간과 날짜를 출력/설정한다.

개요
date [-u] [-d datestr] [-s datestr] [--utc] [--universal] [--date=datestr] [--set=datestr] [--help] [--version] [+FORMAT] [MMDDhhmm[[CC]YY][.ss]]

개요
이 맨페이지는 GNU 버전의 date 를 설명한다. 아무 인수없이 실행하면 date 는 현재 시간과 날짜(아래에서 설명할 `%c' 지시자의 형태대로)를 출력한다. `+'로 시작하는 옵션이 있으면 현재 시간과 날짜를 주어진 인수가 지시하는 형식으로 출력한다. 이는 `strftime' 함수에 주어지는 형식 문자열과 같은 형식이다. `%'로 시작하는 지시자(directive)를 제외하고 문자열에 포함된 모든 문자가 그대로 출력된다.

지시자에는 다음과 같은 것들이 있다:

%   % 문자 그 자체

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..Saturday)

%b  로케일의 약식 월 이름 (Jan..Dec)

%B  로케일의 완전한 월 이름, 가변 길이 (January..December)

%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...)

기본적으로, date 은 숫자 필드를 0 으로 채운다. GNU date 는 다음과 같은 비표준 수치 변형자를 인식한다:

-   (하이픈) 필드를 채우지 않는다.

_   (언더스코어) 필드를 공백으로 채운다.

`+'로 시작하지 않는 인수가 있다면, date 는 시스템 시계를 주어진 시간과 날짜로 설정한다. 인수는 모두 숫자로 구성되어 있으며 다음과 같은 의미를 지닌다:

MM  월

DD  월 중 일

hh  시

mm  분

CC  연도의 처음 두 숫자 (선택적)

YY  연도의 나중 두 숫자 (선택적)

ss  초 (선택적)

오로지 수퍼유저만 시스템 시계를 변경할 수 있다.

  옵션

-d datestr, --date datestr
    datestr 에서 지시한 대로 시간과 날짜를 출력한다. 이 형태는 거의 모든 공통 형식을 사용할 수 있다. 출력은 기본적인 출력 형식을 띠거나 `+' 로 시작하는 인수가 있을 때 date 는 인수에서 주어진 대로 출력한다.

--help
    표준출력으로 사용법을 출력하고 정상적으로 종료한다.

-s datestr, --set datestr
    시간과 날짜를 datestr로설정하며그형식은거의모든공통형식을사용할수있다. 월 이름, 시간대, `오전',`오후' 등을 포함할 수 있다.

-u, --universal
    시간과 날짜를 지역 시간이 아니라 Coordinated Universal Time ( 그리니치 표준시 ) 형식으로 출력하거나 설정한다.

--version
    표준출력으로 버전정보를 출력하고 정상적으로 종료한다.

예

이틀 전의 날짜를 출력하기 위해서는

    date --date '2 days ago'

3 개월하고 하루 지난 날짜를 출력하기 위해서는

    date --date '3 months 1 day'

올해 크리스마스 날짜를 출력하기 위해서는

    date --date '25 Dec' +%j

오늘 날짜를 완전한 월 이름, 월 중 일을 포함하는 형식으로 출력하기 위해서는

    date '+%B %d'

하지만 처음 9 일에 대하여 '%d'는 2 자리를 맞추기 위하여 0을 채우기 때문에 예를 들어 `date -d 1-may '+%B %d'' 라고 하면 `May 01' 라고 출력하므로 원하는 결과가 아닐 수도 있다.

한 자리 수 날짜에 대하여 앞에 0 이 안나타도록 하기 위해서는 비표준인 `-' 변형자를 사용하여 채움을 막는다.

    date -d 1-may '+%B %-d'

번역
이만용 <geoman@nownuri.nowcom.co.kr> <freeyong@soback.kornet.nm.kr>
한글 Manpage 프로젝트 (http://man.kldp.org) 2005년 1월 30일