我想在文件中搜索数字64后添加一个新行.我喜欢使用awk或sed来做这件事.
64 bytes from 170.198.42.128: icmp_seq=1 ttl=60 time=83.4 ms 64 bytes from
170.198.42.128: icmp_seq=2 ttl=60 time=76.6 ms 64 bytes from 170.198.42.128: icmp_seq=3
ttl=60 time=70.8 ms 64 bytes from 170.198.42.128: icmp_seq=4 ttl=60 time=76.6 ms ---
170.198.42.128 ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time
3000ms rtt min/avg/max/mdev = 70.861/76.924/83.493/4.473 ms
Run Code Online (Sandbox Code Playgroud)
我用这个命令
cat file | sed 's/64/\n/g'
Run Code Online (Sandbox Code Playgroud)
但这取代了数字64.我只想打破模式并正确显示以64开头的ping命令模式
我尝试使用追加和插入模式..但没有正确使用它们
需要帮忙
此sed命令应该适用于 gnu 和 BSD sed 版本:
sed $'s/64/\\\n&/g' file
64 bytes from 170.198.42.128: icmp_seq=1 ttl=60 time=83.4 ms
64 bytes from
170.198.42.128: icmp_seq=2 ttl=60 time=76.6 ms
64 bytes from 170.198.42.128: icmp_seq=3
ttl=60 time=70.8 ms
64 bytes from 170.198.42.128: icmp_seq=4 ttl=60 time=76.6 ms ---
170.198.42.128 ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time
3000ms rtt min/avg/max/mdev = 70.861/76.924/83.493/4.473 ms
Run Code Online (Sandbox Code Playgroud)
更新:这是执行相同操作的 gnu awk 命令:
awk '1' RS='64' ORS='\n64' file
Run Code Online (Sandbox Code Playgroud)