日時文字列の形式は、06/12/2012 07:21:22 です。UNIX タイムスタンプまたはエポックに変換するにはどうすればよいですか?
196959 次
6 に答える
114
あなたが探しているのはdate --date='06/12/2012 07:21:22' +"%s"
. --date
と%s
フォーマット文字列の両方が GNU 拡張であるため、これは GNU coreutils を使用していることを前提としていることを覚えておいてください。POSIX ではどちらも指定されていないため、POSIX 準拠のシステムであっても、このような変換を行う移植可能な方法はありません。
の他のバージョンについては、適切なマニュアル ページを参照してくださいdate
。
注: bash--date
と-d
オプションは、日付が US または ISO8601 形式、つまりmm/dd/yyyy
oryyyy-mm-dd
であると想定します。英国、EU、またはその他の形式ではありません。
于 2012-06-12T05:29:26.067 に答える
63
Linux の場合、次のコマンドを実行します。
date -d '06/12/2012 07:21:22' +"%s"
macOS の場合、次のコマンドを実行します。
date -j -u -f "%a %b %d %T %Z %Y" "Tue Sep 28 19:35:15 EDT 2010" "+%s"
于 2015-01-16T06:32:13.570 に答える
3
get_curr_date () {
# get unix time
DATE=$(date +%s)
echo "DATE_CURR : "$DATE
}
conv_utime_hread () {
# convert unix time to human readable format
DATE_HREAD=$(date -d @$DATE +%Y%m%d_%H%M%S)
echo "DATE_HREAD : "$DATE_HREAD
}
于 2015-11-25T13:45:40.193 に答える