awk之match函数

功能:match函数是用于个性化定制搜索模式。

在日常工作非常好用,如提取日志文件中的某个字段

以下是实例:

<code>如以下提取host=后的ip地址:

tools123.cn|GET /Tools/ping/ping.php?host=116.171.245.253 HTTP/1.1" 200 205 "-" "http://tools123.cn/Tools/ping/" "" "-" "5.009" "5.009"
tools123.cn|GET /Tools/ping/ping.php?host=116.171.245.253 HTTP/1.1" 200 205 "-" "http://tools123.cn/Tools/ping/" "" "-" "5.007" "5.007"

如果不有match awk就需要两次awk :

awk -F"host=" '{print $2}'|awk '{print $1}'

如查用math一次就完成了,还有匹配更加复杂的情况,可以工作自己好的研究使用:

awk 'match($0,/host=(.*) HTTP/,a){print a[1]}'/<code>


分享到:


相關文章: