Команда Bash для отправки построчно через netcat - PullRequest
0 голосов
/ 30 сентября 2019

Я пытаюсь отправить выходные данные tshark с помощью этой команды с netcat на принимающий сокет:

sudo tshark -l -Y dns -T fields -e ip.id src port 53 | while read -r line; do echo "$line" | nc 127.0.0.1 12345 ; done

Таким образом, каждый пакет представляет собой одну строку, и каждая строка отправляется на сокет сервера,Моя проблема в том, что эта команда только отправляет первый пакет / строку, а затем останавливает отправку. Даже если tshark хранит пакет захвата. С помощью какой команды я могу отправить каждую строку через соединение Netcat?

Спасибо

РЕДАКТИРОВАТЬ: мне удалось частично решить мою проблему, удалив цикл while из команды. Проблема в том, что теперь netcat отправляет сокету несколько строк. Мой план - сказать netcat отправлять каждую строку отдельно. Как мне этого добиться?

...