+ -
当前位置:首页 → 问答吧 → awk和apache access log。

awk和apache access log。

时间:2011-03-17

来源:互联网

通常,我用awk来处理access log的时候, $9是http status code。但是有时候有些request很特别, 其本身就含有空格(空格是awk的分隔符)。 比如:
193.18.40.27 test - [13/Mar/2011:20:00:00 -0400] "GET /test jdjdjd HTTP/1.1" 304 0

想这种情况怎么取得status code呢?  我想过用”HTTP/1.1“, 但有时候又是HTTP/1.0

谢谢。

作者: lc1999   发布时间: 2011-03-17

本帖最后由 yinyuemi 于 2011-03-17 04:07 编辑

是这么

echo "193.18.40.27 test - [13/Mar/2011:20:00:00 -0400] "GET /test jdjdjd HTTP/1.1" 304 0
193.18.40.27 test - [13/Mar/2011:20:00:00 -0400] "GET /test jdjdjd HTTP/1.1" 304 0
193.18.40.27 test - [13/Mar/2011:20:00:00 -0400] "GET /test jdjdjd HTTP/1.1"304 0 "  |awk '{print length($9)==8?$9 FS $10:$9}'
HTTP/1.1 304
HTTP/1.1 304
HTTP/1.1304

作者: yinyuemi   发布时间: 2011-03-17

热门下载

更多