日本語 man コマンド類 (ja-man-1.1j_5) と日本語 man ドキュメント (ja-man-doc-5.4 (5.4-RELEASE 用) など) をインストールすると、以下のような man コマンド閲覧、キーワード検索が コンソールからできるようになります。
4.11-RELEASE-K, 5.4-RELEASE-K, 5.5-RELEASE-K, 6.0-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.2-RELEASE-K, 8.0-RELEASE-K は、プライベート版 (小金丸が編集してまとめたもの) ですが、 より多くの翻訳したファイルが含まれています。 (5.4-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.2-RELEASE-K, 8.0-RELEASE-K は、全翻訳済み)
6.4-STABLE-K, 7.2-STABLE-K, 8.0-STABLE-K は現在、 作成中で日々更新されています。 最新の snapshots を元に作成しています。
DATE(1) FreeBSD 一般コマンドマニュアル DATE(1)
名称
date - 日付と時刻の表示、設定
書式
date [-jnu] [-d dst] [-r seconds] [-t minutes_west] [-v
[+|-]val[ymwdHMS]] ... [-f fmt date | [[[[[cc]yy]mm]dd]HH]MM[.ss]]
[+format]
解説
引数なしで実行すると、 date ユーティリティは現在の日付と時刻を表示しま
す。引数を与えると、日時の設定、あるいはユーザが定義したフォーマットに
従った日付や時刻の表示を行います。
date ユーティリティは、カーネルクロックから読み取った日付と時刻を表示しま
す。日付と時刻の設定に使用された場合、カーネルクロックとハードウェアク
ロックの両方が更新されます。
なお、日付と時刻を設定できるのはスーパユーザだけです。システムのセキュリ
ティレベル ( securelevel(8) を参照) が 1 より大きい場合、1 秒を越える時刻
修正は許されません。
オプション:
-d dst 夏時間用のカーネル値を設定します。もし dst が 0 でなければ、その
あとの gettimeofday(2) 呼び出しでは `tz_dsttime' に 0 以外の値が
返ります。
-f デフォルトの [[[[yy]mm]dd]HH]MM[.ss] フォーマットの代りに fmt
を、時刻をパーズするフォーマットとして使用します。 strptime(3) を
使用してパーズします。
-j 日付の設定を行いません。本フラグを使用し、 -f フラグを + オプショ
ンとともに用いることで、日付の書式の変換ができます。
-n timed が動作している場合、デフォルトでは date コマンドによりグ
ループ内のすべてのマシンの時刻が変更されます。しかし、 -n オプ
ションを指定した場合には、他のマシンの時刻は変更せず、このマシン
のみで時刻を設定します。
-r seconds
基準時点 (1970 年 1 月 1 日 00:00:00; time(3) 参照) から seconds
秒経過した日時を表示します。 10 進数、8 進数、16 進数のいずれの指
定も可能です。
-t minutes_west
カーネルに GMT (グリニッジ標準時) からの時差を設定します。このあ
とに呼ばれる gettimeofday(2) では、ここで指定された値が
`tz_minuteswest' に入ります。
-u UTC (協定世界時) の日付を表示、設定します。
-v 秒、分、時、日、曜日、月、年のいずれかを val にもとづき修正します
(すなわち、現在の日付を取得し、修正した結果を表示します。日付を設
定するのではありません)。 val の前にプラスもしくはマイナスが付い
ている場合、時刻はそれに従い前後に修正されます。そうでない場合
は、指定した部分が設定されます。必要なら任意個このフラグを指定し
て時刻を修正することが出来ます。フラグは指定した順序に処理されま
す。
(値を修正するのではなく) 値を指定する場合、秒の範囲は 0-59、分の
範囲は 0-59、時の範囲は 0-23、日の範囲は 1-31、曜日の範囲は 0-6
(Sun-Sat)、月の範囲は 1-12 (Jan-Dec)、年の範囲は 80-38 もしくは
1980-2038 です。
val が数値の場合、 y, m, w, d, H, M, S のいずれかを使用して、時刻
のどの部分を修正するのかを指定する必要があります。
曜日もしくは月は数値の代りに名前で指定可能です。名前と共にプラス
(もしくはマイナス) 記号を使用した場合、日付は適合する次の (前の)
曜日もしくは月に進みます (戻ります)。曜日もしくは月が現在のものと
変らない場合、日は修正しません。
特定の値に時刻を修正する場合や、単位が 1 時間よりも大きい場合に
は、夏時間の概念は無視されます。 1 時間以下の単位での修正は、夏時
間の概念を持ちます。現在の時刻を 3 月 26 日 0:30 であり、夏時間の
修正により 01:00 から 02:00 へ進むと仮定した場合、 -v +1H は時刻
を 3 月 26 日 2:30 へ修正します。同様に、現在の時刻が 10 月 29 日
0:30 であり、夏時間の修正により 02:00 から 01:00 へ戻ると仮定した
場合、 -v +3H とすると時刻は 10 月 29 日 2:30 になります。
存在しない特定の値 (例えば、ヨーロッパ/ロンドンのタイムゾーンで
2000 年 3 月 26 日 1:30 BST) へ時刻を修正する場合、正当な時刻にな
るまで、時刻は黙って 1 時間の単位で進められます。 2 回存在する特
定の値 (例えば 2000 年 10 月 29 日 1:30) へ時刻を修正する場合、最
終的なタイムゾーンは、 2 回の時刻のうち早いものに適合するものとな
ります。
詳細に関しては、下記の例を参照して下さい。
プラス (`+') で始まるオプションは、日付と時刻の表示方法を指定するフォー
マット文字列です。フォーマット文字列には、 strftime(3) で記述されているよ
うな変換文字列と、任意のテキストを含むことができます。フォーマット文字列
によって指定された文字の後には、つねに改行文字 (`\n') が出力されます。
date のデフォルトの表示形式は、
``+%+''
としたものと同じです。
もし、引数が ``+'' 記号で始まる文字列でなければ、それはシステムに日時を設
定するための値と解釈されます。日時を設定するための正式な表現は以下のとお
りです:
cc 世紀 (19 または 20 のいずれか) であり、西暦の省略表現の前に
付きます。
yy 西暦の省略表現です。西暦の 10 の位と 1 の位です (1989 年な
ら 89、06 なら 2006)。
mm 月の数字表現です。1 から 12 までの数字です。
dd 日です。1 から 31 までの数字です。
HH 時です。0 から 23 までの数字です。
MM 分です。0 から 59 までの数字です。
ss 秒です。0 から 61 までの数字です。 (59 秒 + 2 秒までのうる
う秒)
分の指定以外はすべて省略可能です。
夏時間と標準時の切り替えや、閏秒や閏年の取り扱いは自動的に行われます。
使用例
以下のコマンド:
date "+DATE: %Y-%m-%d%nTIME: %H:%M:%S"
は、下のような表示を行ないます。
DATE: 1987-11-21
TIME: 13:36:16
ヨーロッパ/ロンドンのタイムゾーンでは、以下のコマンド:
date -v1m -v+1y
は以下を表示します:
Sun Jan 4 04:15:24 GMT 1998
(現在 Mon Aug 4 04:15:24 BST 1997 の場合)。
以下のコマンド:
date -v1d -v3m -v0y -v-1d
は 2000 年 2 月の最後の日を表示します:
Tue Feb 29 03:18:00 GMT 2000
以下のコマンド:
date -v1d -v+1m -v-1d -v-fri
は今月最後の金曜日を表示します:
Fri Aug 29 04:31:11 BST 1997
(現在 Mon Aug 4 04:31:11 BST 1997 の場合)。
以下のコマンド:
date 8506131627
は、 ``1985 年 6 月 13 日午後 4 時 27 分'' に日時を設定します。
date "+%Y%m%d%H%M.%S"
をあるマシンで使用し、別のマシンでの時刻設定に使用可能です。
以下のコマンド:
date 1432
は、日を修正することなく、時だけを 午後 2 時 32 分に設定します。
環境変数
date の実行は以下の環境変数の影響を受けます.
TZ 日時を表示する際に用いられるタイムゾーンを設定します。通常の
フォーマットは /usr/share/zoneinfo からの相対パス名です。例えば、
コマンド ``TZ=America/Los_Angeles date'' はカリフォルニアの現在の
時刻を表示します。詳しいことは、 environ(7) を参照してください。
関連ファイル
/var/log/wtmp 日付のリセットおよび時刻変更の記録がこのファイルに残さ
れます。
/var/log/messages 日付を変更したユーザの記録がこのファイルに残されます。
関連項目
gettimeofday(2), strftime(3), strptime(3), utmp(5), timed(8)
R. Gusella and S. Zatti, TSP: The Time Synchronization Protocol for UNIX
4.3BSD.
診断
date ユーティリティは、成功した場合は 0 を、日時を設定できなかった場合は
1 を、ローカルマシンの設定はできたが、グループのマシン全体の設定に失敗し
た場合は 2 を返します。
timed が多数のマシンの時計をあわせる場合には、新しい時刻のセットに数秒か
かることがあります。このとき date は、 `Network time being set' と表示し
ます。 date と timed(8) との間で通信に失敗した場合は、 `Communication
error with timed' が表示されます。
バグ
システムは VMS と高い互換性を持つフォーマットで日時を保持しようとしていま
す。しかし、 VMS は GMT ではなくローカルな時刻を使っており、夏時間を理解
しません。そのため、 UNIX と VMS を同時に使う場合は、 VMS を GMT で使うべ
きでしょう。
規格
date ユーティリティは IEEE Std 1003.2 (``POSIX.2'') 互換であると想定して
います。
歴史
date コマンドは Version 1 AT&T UNIX から導入されました。
FreeBSD 4.9 November 17, 1993 FreeBSD 4.9