作为批处理脚本的一部分,我有以下命令:
hostname=$(nmblookup -A $ip_address | awk '$2 == "<20>" {print $1}')
从功能性的角度来看,即使对于未解析的主机也是如此.
问题是,当IP地址无法访问或远程计算机没有响应SMB请求时,该命令大约需要十秒钟才能完成.因此,问题很简单:在这种情况下,有没有办法降低经过的时间?或者,换句话说,有没有办法为nmblookup命令设置自定义超时?
注意:我对不使用SIGALRM或类似机制的解决方案感兴趣;如果他们存在来自Ubuntu 12.04 LTS的nmblookup版本是3.6.3.
解决方法
我只是用
timeout 1 nmblookup -A $ip_address
如果运行超过1秒,它会杀死nmblookup.