使用带有bash的pcap分离器拆分Wireshk大号

时间:2019-05-22 11:22:17

标签: bash wireshark pcap

我的pcapng文件很大,我想根据需要的wireshark过滤器拆分它们。我想借助bash脚本并使用pcapsplitter来分割文件,但是当我使用循环时,它总是给我相同的文件。

我写了一个小代码。


#!/bin/bash

for i in {57201..57206}
do
mkdir destination/$i
done

tcp="tcp port "

for i in {57201..57206}
do
tcp="$tcp$i"
pcapsplitter -f file.pcapng -o destination/$i -m bpf-filter -p $tcp
done

问题是,我可以使用bash来实现目标吗? 如果是,为什么它不起作用?

1 个答案:

答案 0 :(得分:1)

当然,这是Bash可以做的。

关于脚本,我首先想到的是这一行:

pcapsplitter -f file.pcapng -o destination/$i -m bpf-filter -p $tcp

其中$tcp的值实际上是tcp port 57201(在下一轮中跟随数字。但是,不带引号,实际上是将tcp仅传递给{{1} }参数。

将这一行更改为:

-p

注意:作为一般建议,在Bash中双引号通常更安全。

NB2:您不需要那两个pcapsplitter -f file.pcapng -o destination/$i -m bpf-filter -p "$tcp" 循环。这是我重写脚本的方法:

for