Como converter arquivos .pcapng para arquivos .pcap / .tcpdump?

3

Eu tenho algumas pastas com 300 a 400 arquivos cada. Os arquivos são capturas wireshark no formato .pcapng . Eu gostaria de escrever um script de shell que abre todos os arquivos e os salva em uma nova pasta usando o formato wireshark .tcpdump .

    
por Pranav Sharma 09.09.2013 / 05:35

1 resposta

5

Ok, encontrei a ferramenta chamada editcap . Você só precisa chamar editcap i.pcapng o.pcap em um loop:

# Recursively convert all *.pcapng files to *.pcap
cd /path/to/folders   # the path to folder where your folders containing '*.pcapng' files are in
find . -type f -name '*.pcapng' -print0 | while IFS= read -r -d '' f; do editcap -F libpcap "$f" "${f%.pcapng}.pcap"; done

(desde que eu sou preguiçoso, eu usei principalmente o script de Radu, além de adicionar aspas duplas para $ {f% .pcapng} .pcap)

Você pode verificar o manual do editcap para mais opções.

Aqui um exemplo:

braiam@bt:~/lab$ ls
something.pcapng
braiam@bt:~/lab$ find . -type f -name '*.pcapng' -print0 | while IFS= read -r -d '' f; do editcap -F libpcap "$f" "${f%.pcapng}.pcap"; done
braiam@bt:~/lab$ file something.pcap something.pcapng 
something.pcap:   tcpdump capture file (little-endian) - version 2.4 (Ethernet, capture length 65535)
something.pcapng: pcap-ng capture file - version 1.0
braiam@bt:~/lab$ 

Como você pode ver, converti o formato pcapng para o formato pcap / tcpdump. A mudança de extensão é um extra.

    
por Braiam 10.09.2013 / 23:29