私はnc
Debian環境で使用しています:
# dpkg -l | grep netcat
ii netcat-traditional 1.10-41+b1
# cat /etc/debian_version
9.4
ヘルプページでは、このフラグの動作について説明します-w
。
-w secs timeout for connects and final net reads
したがって、秒(整数)のみを許可するようです。リモートデバイスを毎秒2回ポーリングする必要があるため、このタイムアウトを減らす必要があります。
echo -n read_input | nc -w 1 192.168.1.185 8800
このコマンドはアプリケーションによって送信されます。実行するコンソールコマンドのみを設定できます。
もちろん、1秒のタイムアウトを使用すると、ほぼ2秒ごとにデバイスをポーリングできます(以前のソケットがまだ閉じていないときに新しいソケットを開くのを防ぐため)。
これを達成する方法がないと確信していますか?だから、タイムアウトを1秒未満にする方法はありますかnetcat
?
私の好奇心から:なぜネットワークタイムアウトが必要なのですか?第二?
答え1
一人では不可能だと思いますnc
。ただし、このtimeout
ツール(GNU coreutilsパッケージ)を使用すると、次のように浮動小数点数で指定されたタイムアウトでコマンドを実行できます。
echo -n read_input | timeout 0.5 nc 192.168.1.185 8800