Para fins de teste, preciso criar um script de shell que se conecte a um IP> Port remoto e envie uma mensagem de soquete TCPIP de texto simples.
shell-script
socket
tcp-ip
Bachalo
fonte
fonte
ctrl+c
ele não mostrará o resultado. Se estiver usando eco, por exemploecho "cookie" | nc localhost 9090
, o fluxo de saída do cliente será fechado (enviado automaticamente), mas o cliente continuará aguardando o resultado do servidor.Em geral, o conselho
netcat
é o melhor caminho.Mas no
bash
eksh
você também pode fazer isso:fonte
1>&3
? Não estou certo o que isso representaecho "request" >&3
, acho que o 1 é apenas redundantetente netcat (por exemplo, nc)
echo GET / HTTP/1.0
) ao meu servidor http localfonte
Em muitos casos, eu não tive acesso ao netcat / socat. Também tive problemas com o uso do bash
exec
em um ambiente de computação distribuído.Devido à sua prevalência, uma solução alternativa é usar os recursos TCP / IP do GNU AWK. Ele fornece uma sintaxe simples, baseada no operador "pipe bidirecional".
Aqui está um exemplo modificado desta fonte que enviará uma mensagem TCP através de um soquete:
A sintaxe completa para o endereço é:
/net-type/protocol/local-port/remote-host/remote-port
. Quandolocal-port
está definido como 0, o host local escolhe a porta automaticamente, o que normalmente é o que você deseja. Você pode ler mais sobregawk
os recursos de rede TCP / IP aqui:fonte