Для целей тестирования мне нужно создать сценарий оболочки, который соединяется с удаленным IP-портом и отправляет простое текстовое сообщение TCPIP Socket.
shell-script
socket
tcp-ip
Bachalo
источник
источник
ctrl+c
не будет показан. Напримерecho "cookie" | nc localhost 9090
, при использовании echo выходной поток клиента будет закрыт (eof sent), но клиент все равно будет ожидать результата сервера.В общем, совет
netcat
лучше.Но в
bash
иksh
вы также можете сделать это:источник
1>&3
? Я не уверен, что это представляетecho "request" >&3
, я думаю, что 1 просто избыточенпопробуйте netcat (например, nc)
echo GET / HTTP/1.0
) на мой локальный http-серверисточник
Во многих случаях у меня не было доступа к netcat / socat. У меня также были проблемы с использованием Bash
exec
в распределенной вычислительной среде.Из-за его распространенности альтернативным решением является использование возможностей TCP / IP GNU AWK. Он предоставляет простой синтаксис, основанный на его операторе «двусторонний канал».
Вот модифицированный пример из этого источника , который отправит TCP-сообщение через сокет:
Полный синтаксис адреса:
/net-type/protocol/local-port/remote-host/remote-port
. Когдаlocal-port
задано значение 0, локальный хост автоматически выбирает порт, который обычно является тем, что вам нужно. Вы можете прочитать больше оgawk
«ю.ш. TCP / IP сетевых возможностей здесь:источник