Date (UNIX)
-d, -de=stringは、文字列stringに適応する日時を表示する。例えば-d two days agoならばコマンド実行時点から2日前の日時を表示する。ただし、nowは指定できない。
-e=datefileは、deで指定した文字列を記述したdatefileを一行ずつ読み込み処理する。
-s, --set=stringは、-d, -deと同様の形式の文字列stringを受け付け、時刻を設定する。
-nは、timed(8)ユーティリティを利用したマシンの時刻同期を行わない。デフォルトでは、timedが稼動している場合、dateコマンドはローカル・グループに含まれる全てのマシンの時刻を同一のものに設定する。-nオプションはこれを抑制する。
-uは、UTCに時刻を表示、もしくは設定する。
date [-u|--utc|--universal] [mmddHHMM[[cc]yy][[.SS]]というオプションでのみ、その出力結果はUTCを指定する適切な形式となる。
-uは、GMTに指定されたとみなす。出力結果例: Sat Feb 5 14:49:42 GMT 2005
--utc, --universalはTZを地方時の代わりにUTCに指定されたとみなす。
UNIXのdateとは、日時を表示するコマンドである。スーパーユーザーはこのコマンドを利用してシステム時刻を設定できる。
dateコマンドに+で始まる以下の文字列をオプションとして与えることで表示形式(フォーマット)を変更することができる。表の通り、dateコマンドの出力結果はロケールによって変化する(混乱しないよう述べると、本稿の表において、出力結果はウィキペディアのシステム時刻であり、それはUTCと一致している。また一部を除いてロケールは「日本」に設定したと仮定している)。
文字出力: %n 改行 %% パーセント %t 水平タブ
デフォルトではdateは数値フィールドをゼロ埋めする。
GNU dateは%と数値指定子の間にあるフィールドに対して、-(ハイフン)を置くと空白を埋めずフィールドを詰めないが、 _(アンダースコア)は空白でフィールドを埋める。この動作はBSDベースのdateコマンドには当てはまらない。
環境変数TZはタイムゾーンを指定する。ただしこの値はコマンドラインパラメータで上書きできる。TZに何も指定されていない場合、デフォルトでは/etc/localtimeの設定が利用される(詳細は記事"tz database"を参照)。