将tshark输出分配给脚本中的variabels

时间:2019-04-20 11:39:00

标签: shell raspberry-pi packet-sniffers tshark sniffer

我目前正在解析由aircrack-ng捕获并解密的pcap文件。 我正在研究TCP软件包,我想用tshark-script很好地显示它们。 可以在tshark输出中用文本替换数字值吗?

我还想知道是否可以在脚本中将tshark输出分配给变量吗?

tshark -r readfile.pcap -T fields -e frame.number -e _ws.col.Time -e data -e tcp.analysis.retransmission -e tcp.analysis.out_of_orders

输出如下:

 number| time    |   data/payload | 1/NULL (retransmission) | 1/NUL(out 
  23        48.151077           
  24        48.151028                      1
  25        48.152101           
  26        48.152052                      1    
  27        48.154661           
  28        48.155124                      1    
  29        48.163865  0002303030303030     
  30        48.164404                      1    
  31        48.168025  0003303030303030

但是我想呈现如下输出:

number | time    | data/payload   | RETRANS | Out_of_order
 23     48.151077           
 24     48.151028                   RETRANS 
 25     48.152101           
 26     48.152052                   RETRANS 
 27     48.154661           
 28     48.155124                   RETRANS 
 29     48.163865  0002303030303030     
 30     48.164404                   RETRANS 
 31     48.168025  0003303030303030

在左侧,您具有pcap文件中的数据包编号和时间戳。 字节00023030303 ...是在客户端和服务器之间发送的嗅探数据包(1到100)。 singel字节是tcp标志。

1 个答案:

答案 0 :(得分:0)

通过管道调用stdout调用程序tr是实现此目标的一种方法:

tshark -r readfile.pcap -T fields -e frame.number -e _ws.col.Time -e data -e tcp.analysis.retransmission -e tcp.analysis.out_of_orders | tr '1/NULL (retransmission)' 'RETRANS' | tr '1/NULL (out of order)' 'Out_of_order'