20 lines
478 B
Bash
20 lines
478 B
Bash
#!/bin/bash
|
|
|
|
if [ -z "$1" ]; then
|
|
echo "Usage: $0 input.pcap"
|
|
exit 1
|
|
fi
|
|
|
|
input_pcap="$1"
|
|
output_dir="split_output/"
|
|
rm -rf $output_dir && mkdir -p $output_dir
|
|
|
|
num=$(tshark -r "$input_pcap" -T fields -e frame.number | tail -n 1)
|
|
echo -e "\e[32m input pcap $input_pcap has $num packets\e[0m"
|
|
|
|
for ((i = 1; i <= num; i++)); do
|
|
tshark -r "$input_pcap" -Y "frame.number==$i" -w "$output_dir/packet_$i.pcap"
|
|
done
|
|
|
|
echo -e "\e[32m split pcap is saved in $output_dir\e[0m"
|