
Unix の時刻形式はどのように機能しますか? たとえば、午後 3 時の Unix 時刻は次のとおりです。
Normal time format <----3:00PM = 1402565420----> Unix Time
どうすれば時間を理解できるでしょうか午後3:00?
答え1
Unix時間は次のように表される。エポックからの秒数: 協定世界時(UTC)00:00:00、つまり1970年1月1日木曜日から経過した秒数(うるう秒は含まない)。
GNUdate
コマンドには、異なる時間形式を変換できる非常に優れた機能がいくつかあります。これらは で非常にわかりやすく説明されているman date
ので、ここではいくつかの例だけを示します。
### "Normal" format
$ date
Thu Jun 12 11:44:23 CEST 2014
### Unix time
$ date +%s
1402566271
変換するには、フラグdate
を使用して特定の日付を指定-d
できます。ただし、Unix の日付を取得するには、完全な日付を指定する必要があります。Unix 時間は日付全体 (年、月、日、時刻) を参照するため、3:00PM を Unix 時間に変換することはできません。たとえば、1987 年 9 月 12 日の Unix 日付を取得するには、次のようにします。
$ date -d "3 PM 12 September 1987" +%s
558450000
これを「通常の」日付に戻すには、次のようにします。
$ date -d "@558450000"
Sat Sep 12 15:00:00 CEST 1987