Bashで2時間の違いを計算する方法があるかどうか疑問に思います。ログファイルから抽出された2つのフィールドがあります。
開始時間:2月12日10:02:10終了時間:2月12日10:53:15
私にとって必要なのは、これら2つの日付の間の経過時間を手動で取得する方法です。時刻値は日付生成コマンドではなく「テキストベース」なので、これを行う方法があるかどうかわかりません。時間は24時間形式なので、真夜中以降の時間を処理しやすくなることを願っています。どんなアドバイスも本当にありがとうございます。ピーターV。
ベストアンサー1
使用できるいくつかの邪悪なトリックがあります。
date -d "Feb 12 10:02:10" +%s
この日付のエポック以降の秒数を返します。これを同じコマンド(他の日付の場合)と組み合わせて、次のコマンドを実行しますbc
。
echo "$(date -d 'Feb 12 10:53:15' +%s) - $(date -d 'Feb 12 10:02:10' +%s)" | bc
またはシェル算術拡張:
echo "$(( $(date -d 'Feb 12 10:53:15' +%s) - $(date -d 'Feb 12 10:02:10' +%s) ))"
あなたに与える
3065
時間の間の秒数。awk
何度も実行する必要がある場合は、何らかの方法で解析できます。