Использование запятой в качестве разделителя с помощью -E separator=
На этом этапе мы научимся изменить разделитель полей в выводе tshark
с табуляции на запятую. Это изменение особенно полезно, когда вам нужно импортировать данные в электронные таблицы, такие как Excel, или проанализировать их с помощью инструментов, которые ожидают данные в формате CSV (Comma-Separated Values, значения, разделенные запятыми).
Сначала давайте вспомним базовую команду, которую мы использовали ранее и которая создает вывод с разделением полей табуляцией. Это поможет нам понять, что именно мы изменяем:
tshark -r sample.pcap -T fields -e frame.number -e ip.src -e ip.dst -e tcp.port -c 3
Для преобразования этого вывода в формат CSV мы будем использовать опцию -E
с параметром separator=,
. Это сообщает tshark
использовать запятые вместо табуляций между полями:
tshark -r sample.pcap -T fields -e frame.number -e ip.src -e ip.dst -e tcp.port -E separator=, -c 3
Разберем, что делает каждая часть этой команды:
-E separator=,
- это ключевое дополнение, которое изменяет разделитель на запятую
- Все другие опции (
-r
, -T fields
, -e
для полей, -c
) работают точно так же, как и раньше
- Порядок опций не имеет значения, главное, чтобы они все были указаны
После выполнения этой команды вы увидите вывод в таком формате:
1,192.168.1.1,192.168.1.2,443
2,192.168.1.2,192.168.1.1,80
3,192.168.1.3,192.168.1.4,22
Для того, чтобы убедиться, что разделитель действительно был изменен на запятую (особенно полезно, если вы не можете визуально отличить табуляцию от пробелов), вы можете передать вывод в команду od -c
, которая показывает специальные символы:
tshark -r sample.pcap -T fields -e frame.number -e ip.src -E separator=, -c 1 | od -c
Этот шаг проверки помогает убедиться, что ваш вывод будет правильно интерпретирован программами, работающими с CSV, что является важным при подготовке данных для анализа в других инструментах.