[英]substituting a dot (.) with a space (“ ”) awk, sed or grep
我需要通過tcpdump文件,這些文件具有IP地址,后跟源或目標端口: 192.168.1.0.80
到這一個: 192.168.1.0 80
。
我怎么能用awk,sed或grep做到這一點?
用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'
-r
開關代表擴展的正則表達式 (我使用它來避免括號反斜杠) s@@@
是替換骨架 ,分隔符可以是我們想要的任何東西,而不僅僅是s///
。 S /前/后/ (
分組並捕獲到\\ 1(到\\ N) [0-9]{1,3}
任何字符:'0'到'9'(1到3次之間(匹配盡可能多的數量)) \\.
文字“。” )
結束捕獲 \\1
和\\2
是捕獲的東西 g
修飾符代表所有出現的
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.