我从日志文件中删除了一个示例。
112 172.172.172.1#50912 (ssl.bing.com):
我想要一些如何从网址中删除#和数字以及()后面的数字。
想要结果。
112 172.172.172.1 ssl.bing.com
这是我一直在努力的sed oneliner。
cat newdns.log | sed -e 's/.*query: //' | cut -f 1 -d' ' | sort | uniq -c | sort -k2 > old.log
由于
答案 0 :(得分:2)
使用sed
,您可以说:
sed 's/#[0-9]*//;s/(\(.*\)):$/\1/' filename
或者,在一次替换中:
sed 's/#[0-9]* *(\(.*\)):$/ \1/' filename
答案 1 :(得分:1)
另一个sed
:
sed -r 's/#[^ ]+|[():]//g'
$ echo '112 172.172.172.1#50912 (ssl.bing.com):' | sed -r 's/#[^ ]+|[():]//g'
112 172.172.172.1 ssl.bing.com