sed 命令替换后的显示问题

用tcpdump -n icmp | sed "s/ICMP/TCP/g"抓包时,另一个机器ping,console不像直接tcpdump会立即显示,而是等一段时间把这段时间的包一次性显示,请问这是怎么回事?
小弟查询了很多sed命令用法没有提及上面情况,在线等,求解答!
如果用ping 10.8.2.118 | sed "s/icmp/tcp/g"是可以及时显示,跟正常ping一样,正常替换。

1个回答

  1. Sed简介 sed是一种在线编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。

怀疑你用tcpdump时,数据为一行,等遇到换行时才显示出来造成的,而用ping命令的话,每一次都有换行,所以能及时显示

beibei2008qq
beibei2008qq 这个应该tcpdump跟ping没区别,因为把tcpdump的输出重定向到文件后显示是有换行的,好蛋疼。。
4 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问