ソケットメッセージを送信する単純なシェルスクリプト

ソケットメッセージを送信する単純なシェルスクリプト

テスト目的でリモートIP>ポートに接続し、単純なテキストTCPIPソケットメッセージを送信するシェルスクリプトを生成する必要があります。

ベストアンサー1

使用ncnetcat)。

仕える人:

$ nc -l localhost 3000

顧客:

$ nc localhost 3000

サーバーとクライアントの両方が標準出力/入力を読み書きします。

これは、サーバーとクライアントが同じマシン上にあるときに機能します。それ以外の場合は、localhostサーバーの外部名に変更します。サーバーでは、0.0.0.0使用可能なすべてのインターフェースにサーバーをバインドするためにそれを使用(または完全に削除)することもできます。

もっと興味深いのは、「サーバー」に接続して過ごすとd一日の時間を提供し、次を過ごすと次のようになりますq

サーバー(からbash):

#!/bin/bash

coproc nc -l localhost 3000

while read -r cmd; do
  case $cmd in
    d) date ;;
    q) break ;;
    *) echo 'What?'
  esac
done <&"${COPROC[0]}" >&"${COPROC[1]}"

kill "$COPROC_PID"

クライアントセッション:

$cnclocalhost3000
D
2017年1月12日木曜日18:04:21 CET
こんにちは?
何?
キュー

(サーバーはを押した後に終了しますが、qクライアントはを押すまでサーバーが消えたことを検出しませんEnter)。

おすすめ記事