【发布时间】:2016-04-18 23:03:45
【问题描述】:
我正在尝试将Wireshark 过滤器应用于由tcpdump 创建的.cap 文件目录。我有大约 1000 个 .cap 文件等待过滤(我们有意在没有过滤器的情况下捕获,以确保我们拥有所需的所有数据,以防我们的假设不成立)。我找不到任何关于使用tshark 递归读取文件、应用过滤器、写出新的.cap 文件的人的引用,然后继续下一个,冲洗,重复。
我的设置:
Tcpdump 正在转储流量并在文件到达1GB 时滚动到新文件(是的,对于 pcaps 来说很大)。仅供参考,这是我正在使用的tcpdump 命令:
sudo tcpdump -q -i <INTERFACE> -w path/to/capfile.cap -C 1000 -Z root
我可以使用tshark 对给定的.cap 文件应用过滤器并将其输出到新的.cap 文件,使用以下命令没有问题:
tshark -R <FILTER> -r in.cap0001 -w out.cap0001
Tshark 主页状态,
"-r ...可以使用命名管道或标准输入(-) 这里……”
但我绝不是名为pipes、stdin 的专家,我也不是程序员。
有人能指出我正确的方向吗?谢谢!
【问题讨论】:
-
如果我的回答对你有用,mark it as accepted。如果没有,请在需要时添加评论,要求澄清或更正(我想您只能根据您当前的声誉对您自己的问题发表评论,但不用担心我会阅读它)。
-
谢谢 Nacho,非常感谢。我唯一需要改变的是
grep '\.cap$'到grep '\.cap' -
不客气。这意味着文件不完全以
.cap结尾,我猜.cap0001到.cap1000然后,如果是这种情况,那么是的,删除$应该可以做到。干杯! -
嗯,有道理,因为确实如此!再次感谢!