gpt4 book ai didi

linux - 解析 bash 中的 httpd 日志

转载 作者:太空宇宙 更新时间:2023-11-04 05:03:22 25 4
gpt4 key购买 nike

我的 httpd 日志具有以下格式

123.251.0.000 - - [05/Sep/2014:18:19:24 -0700] "GET /myapp/MyService?param1=value1&param2=value2&param3=value3 HTTP/1.1" 200 15138 "-" "-"

我需要提取以下字段并显示在一行上:

IP value1 httpResponseCode(eg.200), dataLength

在 bash 中执行此操作最有效的方法是什么?

最佳答案

当您使用 Linux 时,您很可能还安装了 GNU awk。如果是这样:

$ awk 'match ($7, /param1=([^& ]*)/, m) { print $1, m[1], $9",", $10 }' http.log

给出:

123.251.0.000 value1 200, 15138

只要 value1 中没有 & 符号或空格,这种方法就有效,如果请求已正确转义,则不应有这种情况。

关于linux - 解析 bash 中的 httpd 日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25702252/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com