如何通过TShark从标准输出获取网络数据包的二进制格式(无需保存为pcap文件)
如何通过TShark从标准输出获取网络数据包的二进制格式(无需保存为pcap文件)
没问题,其实TShark本身就支持把二进制pcap格式的数据直接输出到标准输出,完全不需要先写入文件,操作起来很简单:
只需要把-w参数的文件名换成-就行,这个符号在大多数UNIX/Linux工具里都代表“标准输出”(或者标准输入,取决于上下文)。对应的命令就是:
tshark -i eth0 -w -
这样执行后,TShark就会把抓包得到的二进制pcap格式数据直接输出到stdout,而不是写入某个文件。你甚至可以直接把这个输出通过管道传给其他工具处理,比如:
tshark -i eth0 -w - | your-processing-program
另外你提到的-T选项确实不用考虑,它是用来指定文本格式的输出(比如JSON、PSML、PDML这些结构化文本),和二进制pcap格式完全不是一回事,所以咱们用-w -就刚好满足需求啦。
备注:内容来源于stack exchange,提问作者Youen lb
相关产品推荐
相关产品推荐

