Как передать полученные данные из netcat в другой скрипт в качестве аргумента?

У меня простой скрипт bash nc :

 #!/bin/bash nc -k -l 127.0.0.1 4444 > filename.out 

который прослушивает порт 4444 для TCP соединения. Вместо перенаправления полученных данных на filename.out я хотел бы, если возможно, передать каждый кусок данных (отдельные строки текста) в script.sh качестве аргумента. Как мне это сделать?

Заранее спасибо.

EDIT: Я также пробовал:

 #!/bin/bash nc -k -l 127.0.0.1 4444 | /path/to/script.sh 

но это не работает

One Solution collect form web for “Как передать полученные данные из netcat в другой скрипт в качестве аргумента?”

Ниже приведена точка входа в сценарий с несколькими входами.

 #!/bin/bash [ $# -ge 1 -a -f "$1" ] && input="$1" || input="-" # your script's payload here 

#! Я думаю, что

на второй линии

$# -ge 1 и тестирует хотя бы один аргумент командной строки

-a является булевым и оператором

-f "$1" проверяет, является ли первый аргумент файлом

&& следует директива, которая должна выполняться, если выполнено предыдущее условие

|| следует, что произойдет, если условие проверки не соответствует действительности

 nc -k -l 127.0.0.1 4444 > filename.out my_processing_script filename.out 

-или-

 nc -k -l 127.0.0.1 4444 | my_processing_script 

поэтому, если у меня есть аргумент, и это файл, мой вход – этот файл, если нет, мой вход поступает из трубы, то есть "-"

то вы можете управлять своей вещью по своему усмотрению. Или

Я тестировал с полезной нагрузкой

 awk '{print $2}' ${input} 

и мой вход поступал из команды netstat -rn и работал в любом случае. Надеюсь, это то, о чем вы спрашиваете

  • Книги / Ресурсы, которые объясняют реализацию ядра TCP / IP
  • Значение bash -i> & / dev / tcp / HOST / PORT 0> & 1?
  • iptables port-mirroring
  • Почему Linux не использует диапазон портов IANA Ephemeral?
  • Попытка открыть порт с помощью CentOS
  • Значение записей журнала из конфигурации iptables
  • Порт открыт высоко в течение нескольких минут чаще
  • Что это диапазон min / max для SSH?
  • порядок обработки правил в цепочках iptables
  • почта php не работает на сервере rhel?
  • Почему этот простой клиент Perl не работает?
  • Interesting Posts

    Проблема с объединением двух простых файлов dot nix для nix-shell

    Ошибка при настройке dynupdater5.4.0-2

    Что означает «> |» -reirection («большая труба» -определение)?

    Используя команду cURL, как извлекать данные запаса, которые возвращаются * без * запятых и пробелов?

    Команда mv с шаблоном пути, содержащим случайную строку

    Получение Mint MATE (Marco?), Чтобы поместить окно-закрыть X в фактический угол, а не только рядом с ним

    Отправка запроса CURL с помощью настраиваемого IP-адреса

    Как сделать чтение услуги из гнезда FIFO

    LVM + добавить еще один новый диск, чтобы расширить текущий размер диска SDB

    Как распаковать набор файлов в каталоге?

    выход из сценария

    Какой клиент для DECwindows?

    как заменить значение вычислением в bash / sed

    Чтобы получить журналы между конкретными метками времени вместе с датой, используя сценарий оболочки

    Невозможно выполнить exec / bin / false: нет такого файла или каталога

    Linux и Unix - лучшая ОС в мире.