如何使用tshark将pcap文件保存到文本文件

How to save pcap file to text file using tshark

我有一个 pcap 文件:a.pcap 其中包含 udp 数据包。

我可以使用 wireshark GUI 将此 a.pcap 保存到文本文件 (.txt)。 (文件 -> 另存为 -> k12 文本文件)。

如何从命令行使用 tshark 做同样的事情。我想要 与(文件 -> 另存为 -> k12 文本文件)完全相同的输出文件

我尝试过如下命令:

tshark -T pdml -r 1.pcap -T 字段 -e 数据 > a.xml

这将导致将 udp 负载写入 a.xml。这不是我需要的。

I can save this a.pcap to text file (.txt) with wireshark GUI. (File -> Save as -> k12 text file).

“文本文件”涵盖了多种文本文件格式,例如:

  • 一个将数据包摘要显示为文本的文件(默认情况下是 Wireshark 的最顶层面板);
  • 一个文件,以文本形式显示每个数据包的数据包详细信息(对于每个数据包,显示 Wireshark 的默认中间窗格);
  • 一个显示数据包数据的十六进制转储的文件(显示每个数据包的默认 Wireshark 最底部窗格);
  • 其中两个的组合,或所有三个的组合;
  • 数据包摘要列的 CSV 文件;
  • 数据包中特定字段的 CSV 文件;
  • 一个 PSML 文件,显示 XML 数据包摘要的组成部分;
  • 一个 PDML 文件,显示 XML 每个数据包详细信息的组成部分;
  • 一个 JSON 文件显示每个数据包的详细信息;
  • 一个显示数据包原始十六进制数据的 C 源文件,每个数据包都在一个单独的 C 字节值数组中;
  • 一种文本数据包捕获格式。

因此,没有将 pcap 文件另存为的“the”文本格式;有很多选择。

“K12文本格式”为文本抓包格式;这是某些 Tektronix 设备可以写出的内容 - 从这个意义上说,它类似于写出原始十六进制数据以及一些元数据。但是,从用户界面的角度来看,它更像是 Wireshark 中的“另存为...”,因为它是一种捕获文件格式。

你这样做的方式是

tshark -F {output file format} -r {input file} -w {output file}

所以,如果你想读取 pcap 文件并将其写成“K12 文本格式”文件,你可以使用

tshark -F k12text -r a.pcap -w a.txt

您也可以使用 editcap 执行此操作:

editcap -F k12text a.pcap a.txt