NCが誤って詰まった

NCが誤って詰まった

私が期待するのはこれです:

nc -l localhost 7000 </dev/null &
nc localhost 7000 </etc/profile

この

nc -l localhost 7000 </etc/profile &
nc localhost 7000 </dev/null

印刷後は完了しますが、両方の/etc/profile コマンドグループは中断されます(最初の場合は両方のプロセスが進行し、2番目の場合はサーバーは完了しますが、クライアントは完了しません)。

コマンドが完了していないのはなぜですか?

ncこれはmy / Linux(4.15)のバグですか? MacOSとCygwinで試しましたが、Linuxコマンドのみが完了していません。

ベストアンサー1

私はgnu-netcatの代わりにnetcatを使用しています。どのバージョンを使用しているかはわかりませんが、gnu-netcatの場合はオプションが異なる場合があります。

私は-qオプションがあります:

-q secondsEOFを検出し、指定された時間(秒)待ってから終了します。

その場合は、次のようにしてください。

$ nc -l localhost -p 7000 -q 0 < /etc/passwd

以下は:

$ nc localhost 7000

/etc/passwdその後、2番目の端末からコンテンツをインポートすると、両方のインスタンスがnc終了します。

おすすめ記事