Do celów testowych muszę utworzyć skrypt powłoki, który łączy się ze zdalnym adresem IP> Port i wysyła prosty tekstowy komunikat TCPIP Socket.
shell-script
socket
tcp-ip
Bachalo
źródło
źródło
ctrl+c
nie zostanie wyświetlony. Jeśli używasz echa, np.echo "cookie" | nc localhost 9090
Strumień wyjściowy klienta zostanie zamknięty (eof wysłany), ale klient nadal będzie czekał na wynik serwera.Ogólnie rzecz biorąc, porady
netcat
są lepsze.Ale
bash
iksh
można też to zrobić:źródło
1>&3
? Nie jestem pewien, co to oznaczaecho "request" >&3
, myślę, że 1 jest po prostu zbędnyspróbuj netcat (np. nc)
echo GET / HTTP/1.0
) na mój lokalny serwer httpźródło
W wielu przypadkach nie miałem dostępu do netcat / socat. Miałem również problemy z używaniem basha
exec
w rozproszonym środowisku komputerowym.Ze względu na powszechność, alternatywnym rozwiązaniem jest wykorzystanie możliwości TCP / IP GNU AWK. Zapewnia prostą składnię opartą na operatorze „potoku dwukierunkowego”.
Oto zmodyfikowany przykład z tego źródła , który wyśle komunikat TCP przez gniazdo:
Pełna składnia na adres:
/net-type/protocol/local-port/remote-host/remote-port
. Gdylocal-port
ustawiony jest na 0, lokalny host automatycznie wybiera port, który zwykle jest tym, czego chcesz. Możesz przeczytać więcej na tematgawk
„s możliwości TCP / IP networking tutaj:źródło