Unixコマンド/date

date

機能

dateコマンドは現在の日付と時刻を表示します。
引数になにも指定せずにdateコマンドを実行すると、次のようなフォーマットで日付と時刻を表示します。
2005年 5月15日 日曜日 06時09分48秒 JST

構文

date [オプション] [日付] [+表示形式]

オプション

-u             UTC(協定世界時)で日付,時刻を設定する。

日時のフォーマット

(FreeBSD)
[[[[yy]mm]dd]HH]MM[.ss]       -年月日時分.秒
(Linux)
MMDDhhmm[[CC]YY][.ss]         -月日時分年.秒
(Solaris)
mmddHHMM[cc]yy[.ss]           -月日時分年.秒

表示形式の主な指定文字

オプション         意味                       例
   %A        曜日(曜日名の完全表記)       Sunday、日曜日
   %a        曜日(曜日名の省略表記)       Sun,(日)
   %B        月(月名の完全表記)           January、1月
   %b        月(月名の省略表記)           Jan
   %c        日時(日付と時刻)             Sat Nov 04 12:02:33 1989
   %d        日(月内通算日数2桁)          01,31
   %D        日付(%m%d%y)                
   %H        時(24時間表記の2桁)          00,23
   %h        %dと同じ                    
   %I        時(12時間表記の2桁)          01,12
   %j        年間通算日数(3桁)            001,365
   %k        時(24時間表記の2桁0は空白)    0,23
   %l        時(12時間表記の2桁0は空白)    1,12
   %M        分(分の2桁表記)              00,59
   %m        月(月の2桁表記)              01,12
   %p        午前午後                     AM,PM,午前,午後
   %S        秒(秒の2桁表記)              00,60(61)
   %x        日付                         03/01/99,1999-03-01
   %y        年(世紀を除く下2桁)          99
   %Z        タイムゾーン                 JST

コマンド例

▼現在の日時を表示する。

$ date
2005年 5月15日 日曜日 21時37分19秒 JST

▼協定世界時で現在の日時を表示する。

$ date -u
2005年 5月15日 日曜日 12時38分10秒 UTC

▼日付と時刻を表示する。

$ date +%c
日  5/15 21:39:08 2005

▼年月日のみを表示する。

$ date +%y%m%d
050515

▼日付は「-」で区切り、時間は「:」で区切る。

$ date +%y-%m-%d:%H:%M
05-05-15:21:41

▼日付に「日付」、時間に「時間」と文字列を付加して表示する。

$ date +"日付:%Y-%m-%d 時間:%H:%M"
日付:2005-05-15 時間:21:43

▼システムの日付と時刻を設定する。(スーパーユーザ)

# date 990403172.40
Sat Apr 3 17:12:40 JST 1999