我有一个大的pcap文件,我的目标是只提取跟踪的某个时间戳周期(例如,数据集时间从0到200开始,但我只需要50到100秒)。
我尝试使用editcap工具并使用此命令
editcap -A "50.000000000" -B "100.000000000" input_file output_file
因为我的数据集 time 字段显示此格式。 问题是,它给出了错误
"editcap: "50.000000000" isn't a valid time format"
我尝试过其他方式,例如,根据wireshark网站,格式应该是这样的,并且也以相同的错误结束。
The time is given in the following format YYYY-MM-DD HH:MM:SS
net中讨论的一些解决方案是使用引用但也给我错误
"YYYY-MM-DD HH:MM:SS"
问题是,使用editcap工具实现上述目标的真实格式是什么。
答案 0 :(得分:0)
editcap -A "2006-12-15 13:17:10" ...
对我来说很好(在Windows上)。
注意:您必须使用t -tad
选项显示的时间(没有小数秒)。
即:指定子秒(2006-12-15 13:17:10.1234
)将忽略子秒部分。
答案 1 :(得分:0)
您可以尝试这种方式,而不是使用editcap:
$ tshark -r input.pcap -R "frame.time_relative >= 50 && frame.time_relative <= 100" -w output.cap
答案 2 :(得分:0)
由于捕获的日期是UTC时间,然后可能与您看到的不同,请使用以下两个命令:
>> capinfos -a -e 201609011400.pcap
File name: 201609011400.pcap
Packet size limit: inferred: 34 bytes - 96 bytes (range)
Start time: Thu Sep 1 07:00:00 2016
End time: Thu Sep 1 07:15:00 2016
>> editcap -A "2016-09-01 07:00:00" -B "2016-09-01 07:05:00" 201609011400.pcap 201609011400_1st_third.pcap