0

我有一个解析 aws cloudfront 日志的 shell 脚本。

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

任何帮助表示赞赏。

4

1 回答 1

2

脚本的 awk 部分在要格式化为日期时间的日期和时间部分之间添加逗号。这导致“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 回答