Netcat не работает - PullRequest
       32

Netcat не работает

0 голосов
/ 07 ноября 2011

Я только начинаю работать со скриптами bash, и я попытался заставить работать простой канал:

#!/bin/sh                                                                                   

mkfifo apipe
cat apipe | nc -l $1 | /home/matt/testprogram > apipe

Учитывая, что номер порта работает, и программа работает так, как я хочуЧто может сделать этот скрипт испортить?

Предполагается, что моя программа будет печатать некоторый текст, а также принимать пользовательский ввод с помощью fgets.Когда я запускаю свой скрипт оболочки, я хочу, чтобы он действовал так, как будто я просто запускаю программу нормально.Когда я запускаю его, я просто выключаю его и ничего не делаю, и мне приходится ломать его с помощью Ctrl + C.

Я набираю в терминале что-то вроде:

sh testnc.sh 2342

Спасибоза любой совет

1 Ответ

2 голосов
/ 07 ноября 2011

Вы используете NC неправильно.nc -l $1 прослушивает внешнее соединение через этот порт.Таким образом, вы можете запустить что-то вроде этого:

host 1:

nc -l <port> | /home/matt/testprogram

host 2:

cat files | nc <host1> <port>

Но использование, которое вы делаете, не имеет смысла.

...