Терминальная команда для отправки данных (текстовая строка) на порт на удаленном компьютере

6946
Eddy

Я пытаюсь отправить данные (текстовая строка) на порт на удаленном компьютере с помощью утилиты терминала. Строка будет использоваться для запуска чего-либо на удаленном компьютере, на котором запущена программа, которая будет прослушивать этот конкретный порт.

Я использовал команду netcat и попробовал несколько комбинаций из следующего, но, похоже, не могу правильно определить параметр. Может кто-нибудь указать мне, где я делаю неправильно?

eddy-2:Desktop eddy$ nc IPADDRESS PORT > woc.txt eddy-2:Desktop eddy$ nc IPADDRESS PORT < woc.txt 

PS: woc.txt содержит текстовую строку указанной команды.

Редактировать: я пытаюсь отправить строку из OSX в Windows XP, где определенный порт открыт по умолчанию.

2

1 ответ на вопрос

4
new123456

Используйте netcat так:

Сервер: cat woc.txt | nc -l -p PORT

Клиент: nc HOST PORT > woc.txt


Спасибо garyjohn за вышеуказанную модификацию.

Добавил правку в мой пост выше. Я пытаюсь отправить строку из OSX в Windows XP, где определенный порт открыт по умолчанию. Чтобы эта штука работала, должны одновременно работать cat и netcat. Примечание: я попробовал множество других комбинаций со страницы руководства, но мне показалось, что я что-то упустил, поэтому я спросил. Eddy 13 лет назад 0
@ Eddy - Нет. Запустите ** сервер первым ** (он будет зависать при ожидании клиента), ** клиент вторым **. new123456 13 лет назад 0
`nc IPADDRESS PORT <woc.txt` должен работать нормально. При чем тут прослушивание на ПОРТ сервера? garyjohn 13 лет назад 0
@ Эдди: в вашей серверной команде отсутствует `-p`. Это должен быть `nc -l -p PORT <woc.txt`. Кроме того, я понял, что new123456 хочет отправить содержимое woc.txt на сервер. garyjohn 13 лет назад 1
@garyjohn - Правильно. Цитата Eddy: ** woc.txt содержит текстовую строку указанной команды ** new123456 13 лет назад 0