我正在编写一个批处理脚本,我应该区分Windows和非Windows系统(Linux,MAC OS,交换机,Xerox机器等)。
算法:
if (it is a Windows System)
then
do this
end if
为了做到这一点,我试图帮助nbtstat
命令。据我所知,当执行nbtstat -A [IP Address]
时,如果[IP Address]
是Windows系统,它将显示输出如下:
>nbtstat -A 172.22.73.15
Local Area Connection:
Node IpAddress: [172.22.73.15] Scope Id: []
NetBIOS Remote Machine Name Table
Name Type Status
---------------------------------------------
MANDAR-PC <00> UNIQUE Registered
DOMAIN <00> GROUP Registered
MANDAR-PC <20> UNIQUE Registered
DOMAIN <1E> GROUP Registered
MAC Address = 00-1E-0B-9D-DD-E9
对于非Windows系统,输出将为:
>nbtstat -A 172.22.246.51
Local Area Connection:
Node IpAddress: [172.22.73.15] Scope Id: []
Host not found.
如何区分Windows和其他系统,我如何使用nbtstat
或任何其他命令?
答案 0 :(得分:0)
nbtstat -A 172.22.246.51 | find /i "Host not found." >nul 2>&1 && ( echo not a windows ) || (echo windows)