2010-11-26 14 views
9

クライアントソケットを開き、ソケットからすべてを読み込み、ソケットを閉じるための簡単なbashコマンドを探しています。ソケットのためのwgetやカールのようなもの。ネットワークソケットから読み取るbashコマンド?

これを行うにはBashにコマンドがありますか?私はbashスクリプトを書く必要がありますか?

答えて

3

ncを使用します。その迅速かつ簡単。 NCは、5秒、最大を待機する

echo "GET /files/a_file.mp3 HTTP/1.0" | nc -w 5 192.168.0.2 999 > /tmp/the_file.mp3

スイッチ-w 5状態:それをリソースの要求を送信、ポート999でクライアント192.168.0.2に接続し、ディスクにそのリソースを保存するには、次の手順を実行します応答。 ncがダウンロードされると、ソケットは閉じられます。

あなたはもっと複雑なリクエストを送信する場合は、あなたが、それを書く「reqest」をファイルに保存して、NCにパイプを通してファイルを猫しgeditのか、いくつかの他のテキストエディタを使用することができます。

cat request.txt | nc -w 5 192.168.0.2 999 > /tmp/the_file.mp3

これは1行のコマンドなので、スクリプトを書く必要はありません...しかし、頻繁に使用する場合は、スクリプトを書くことが必須です!

希望しました。 :)

1

既に言及したnetcatnc)はシンプルで強力です。しかし、さらに強力なツールが必要な場合:socat

関連する問題