私はコマンドを発行しています:
netcat serveraddress myport < MY_FILE
重要なのは、ファイルが送信されると、netcatが接続を閉じるためのメッセージを送信するということです。そのファイルを送信した後、コンソールからメッセージを書き込む必要があります。 stdinにpipilelineするために何かをしたことを覚えています。これでしたか?
netcat serveraddress myport < MY_FILE |
それは現在機能していません。
私はUNIXを使用しています。
追加情報:これはサーバー側での制御を想定していませんでした(たとえば、サーバー側でnetcatを使用してインバウンド接続をリッスンします)
おそらくあなたはやっていた:
cat MY_FILE - | ncat ...
(ncat
は優れたプログラムであると信じているため、意図的にnetcatのスペルを間違えていることに注意してください。)
サーバ側:
nc -k -l 10000 < my_in_file
クライアント側:
echo "bye" | netcat 192.168.1.6 10000 > my_in_file -
他の接続をリッスンし続けるには、nc
で-k
を使用します。
サーバーに接続し、サーバーをファイルに書き込み、stdoutに出力するとしますか?
サーバ:
nc -k -l $PORT | tee file ( or > file without print to stdout)
クライアント
nc $IP $PORT < file_to_send
Ncの-q-1オプションを使用できます。
echo MY_FILE | nc -q -1 192.168.0.1 9000
このように、コマンドがバックグラウンドで実行された場合にも機能します。
このスレッドは非常に古いと思いますが、OPはunixを使用しています。参照用に、「cat FILE ncatHost」と同等のウィンドウを示します。
type FILE con | ncat Host
次に、CTRL-ZまたはCTRL-Cを入力して接続を終了します。
メモ