0

我需要以这种方式浏览 tcpdump 文件,这些文件的 IP 地址后跟它们的源或目标端口:192.168.1.0.80到这个:192.168.1.0 80

如何使用 awk、sed 或 grep 执行此操作?

4

1 回答 1

2

sed

tcpdump -v -n |
sed -r 's@([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})\.([0-9]{1,5})@\1 \2@g'

解释

  • -rswitch 代表扩展的正则表达式(我用它来避免括号反斜杠)
  • s@@@是一个替代骨架,分隔符可以是我们想要的任何东西,而不仅仅是s///. s/之前/之后/
  • (分组并捕​​获到 \1(到 \N)
  • [0-9]{1,3}任何字符:'0' 到 '9'(1 到 3 次(尽可能匹配))
  • \.一个字面的“。”
  • )捕获结束
  • \1并且\2是被捕获的东西
  • g修饰符代表所有出现
于 2013-01-27T18:18:14.193 回答