Unixの時刻形式はどのように機能しますか?たとえば、Unix時間の3:00 PMは次のとおりです。
Normal time format <----3:00PM = 1402565420----> Unix Time
時間を:00 PMとして理解させるにはどうすればよいですか?
Unix時間は エポックからの秒数 として与えられます:00:00:00協定世界時(UTC)または1月1日木曜日から経過した秒数(うるう秒は含まれません)。 1970
GNU date
コマンドには、さまざまな時間形式間で変換できるいくつかの非常に優れた機能があります。これらはman date
で非常にうまく説明されているので、ここにいくつかの例:
### "Normal" format
$ date
Thu Jun 12 11:44:23 CEST 2014
### Unix time
$ date +%s
1402566271
変換するには、-d
フラグを使用してdate
に特定の日付を指定できます。ただし、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