0

AWS CloudFront ログを解析するシェル スクリプトがあります。

awk '{print $1","$2","$4","$5","$8","$9","(substr($11,1,7))","$12 }' access_log | grep cid= | sed -e 's/\/data//g;s/\/videos//g;s/\/images//g;s/\/hls//g;s/\/rss//g;s/\/xml//g;s/cid=//g' > stats.txt

フィールド $1 と $2 を結合しようとしているので、日時スタンプは次の形式に似ています: Date_time 0000-00-00 00:00:00

現在、日付、時刻 2012-12-23 20:59:47 の 2 つのフィールドにあります。

どんな助けでも大歓迎です。

4

1 に答える 1

2

スクリプトの awk 部分は、datetime としてフォーマットする日付と時刻の部分の間にコンマを追加しています。これにより、「YYYY-MM-DD HH:MM:SS」が「YYYY-MM-DD,HH:MM:SS」と表示されます。

結果を得るには、スクリプトを次のように変更します。

awk '{print $1" "$2","$4","$5","$8","$9","(substr($11,1,7))","$12 }' access_log | grep cid= | sed -e 's/\/data//g;s/\/videos//g;s/\/images//g;s/\/hls//g;s/\/rss//g;s/\/xml//g;s/cid=//g' > stats.txt

これは日時フィールドに正しく挿入されます。

于 2012-12-29T22:54:50.190 に答える