[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

21.1.6 date のオプション

このプログラムでは以下のオプションが使用できる。参照: 共通オプション.

‘-d datestr’
‘--date=datestr’

現在の日時の代りに、日付文字列 datestr で指定した日時を表示する。 datestr には、よく使われる書式なら、ほとんどどんな書式でも使うことができる。 月の名前、タイムゾーン、‘am’ や ‘pm’、‘yesterday’ といった単語、などを含んでいてもよい。たとえば、‘--date="2004-02-27 14:19:13.489392193 +0530"’ は、UTC よりも東 5 時間 30 分のタイムゾーンで 2004 年 2 月 27 日 午後 2 時 19 分 13 秒から 489,392,193 ナノ秒経過した瞬間を指定している。
注意: 現在のところ、入力は、ロケールに依存しない書式でなければならない。 たとえば、以下の例の LC_TIME=C は、多くのロケールで正しい日時を再表示させるために必要である。

 
date -d "$(LC_TIME=C date)"

参照: See section 日付入力の書式.

‘--debug’

解析した日時について説明し、現在のタイムゾーンを表示し、 間違えた使い方をしている疑いがあれば、警告を出す。

‘-f datefile’
‘--file=datefile’

ファイル datefile の各行を ‘-d’ の場合と同じように解析して、生成された日付と時刻を表示する。 datefile が ‘-’ ならば、標準入力を使用する。 処理する日付がたくさんある場合に、このオプションは重宝である。 何故ならば、date コマンドを何度も起動するときのシステムのオーバーヘッドは、 馬鹿にならないことがあるからだ。

‘-I[timespec]’
‘--iso-8601[=timespec]’

ISO 8601 の書式、‘%Y-%m-%d’ を使って、日付を表示する。

引数 timespec では、日付の後ろに時刻をどの単位まで追加するかを指定する。 以下の一つを指定することができる。

‘date’

日付のみを表示する。timespec を省略した場合のデフォルト。

‘hours’

日付にその日の何時かを追加する。

‘minutes’

何時何分まで追加する。

‘seconds’

何時何分何秒まで追加する。

‘ns’

何時何分何秒何ナノ秒まで追加する。

時刻の部分まで表示するときは、‘%:z’ の書式でタイムゾーンも付ける。 この書式は、使用しているロケールが何であるかを問わず、‘--date’ (‘-d’) や ‘--file’ (‘-f’) オプションに対する入力として、常に適切である。

‘-r file’
‘--reference=file’

現在の日付と時刻の代りに、file の内容を最後に更新した (the last modification) 日付と時刻を表示する。

‘-R’
‘--rfc-822’
‘--rfc-2822’

日付と時刻を ‘%a, %d %b %Y %H:%M:%S %z’ という書式を使用し、 C ロケールで評価して表示する。従って、月や曜日の省略形は常に英語になる。 一例を挙げると、こんな表示である。

 
Fri, 09 Sep 2005 13:51:39 -0700

この書式は、Internet RFC 2822 と RFC 822 に従っている。 インターネットの E メールに関する現在と以前の規格である。

‘--rfc-3339=timespec’

Internet RFC 3339 が規定している書式を使用して、日付を表示する。この書式は、ISO 8601 の書式のサブセットだが、日付と時刻を区切るのに、‘T’ という文字ではなく、空白を使うことをアプリケーションに許しているという相違点がある。 この書式は、使用しているロケールが何であるかを問わず、‘--date’ (‘-d’) や ‘--file’ (‘-f’) オプションに対する入力として、常に適切である。

引数 timespec では、時刻をどこまで表示するかを指定する。 以下の一つを指定することができる。

‘date’

年から始まる日付だけを表示する。たとえば、‘2005-09-14’。 これは、‘%Y-%m-%d’ という書式と等価である。

‘seconds’

年から始まる日付と秒までの時刻を表示し、両者の間は空白で区切る。 一例を挙げると、‘2005-09-14 00:56:06+05:30’。出力の末尾には、 協定世界時からの時差が付く。例の場合、‘+05:30’ は、地方時が UTC より 5 時間 30 分進んでいることを意味している。 これは、‘%Y-%m-%d %H:%M:%S%:z’ という書式と等価である。

‘ns’

‘seconds’ と似ているが、ナノ秒まで表示する。 一例を挙げると、‘2005-09-14 00:56:06.998458565+05:30’。 これは、‘%Y-%m-%d %H:%M:%S.%N%:z’ という書式と等価である。

‘-s datestr’
‘--set=datestr’

日付と時刻を datestr に設定する。上記の ‘-d’ を参照。 前節「システムクロックの設定」 も参照すること。システムクロックの設定.

‘-u’
‘--utc’
‘--universal’

環境変数 TZ が、文字列 ‘UTC0’ に設定されているかのように、 処理に協定世界時 (UTC, Coordinated Universal Time) を使用する。 協定世界時は、歴史的な理由から「グリニッジ標準時 (GMT)」と呼ばれることもよくある。 一般にシステムは閏秒を無視するので、日時は正真の UTC ではなく、UTC の近似値になる。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

This document was generated on June 7, 2022 using texi2html 1.82.