我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
所以看起来它只接受秒(作为整数)。我需要减少此超时,因为我必须每秒轮询远程设备两次:
echo -n read_input | nc -w 1 192.168.1.185 8800
该命令由应用程序发送。我只能设置要执行的控制台命令。
当然,如果超时时间为 1 秒,我几乎只能每两秒轮询一次设备(以避免在前一个套接字尚未关闭时打开一个新套接字)。
您确认没有办法实现这一目标吗?所以,有没有办法让超时<1秒netcat
?
出于我自己的好奇心:为什么网络超时应该在秒?
答案1
我认为单独不可能nc
。但是您还可以使用该timeout
工具(GNU coreutils 软件包),它允许您运行指定为浮点数的时间限制的命令,例如像这样。
echo -n read_input | timeout 0.5 nc 192.168.1.185 8800