我有两台电脑,pcA
和pcB
。我需要在pcA
上运行批处理文件以检查pcB
是否在正确的域上(EEP202)如果是,则应该返回PASS,否则它应该返回FAIL。
我对网络不太好,但我猜我可以先ping pcB
。如果它没有通过那么它肯定不在正确的域上。
如果确实通过了,那么我假设您可以从ping中提取域名吗?
任何帮助都会很棒!
答案 0 :(得分:1)
假设您正在谈论Windows域,您可以使用nbtstat来查询计算机的名称,域和其他一些属性:
nbtstat -A x.x.x.x
这是link from Microsoft,其中包含选项和输出格式的说明。
如果您特别想要域名,可以使用:
nbtstat -A x.x.x.x | find "<00>" | find "GROUP"
Ping不会返回计算机加入的域。
使用此单行,您可以为域eep202获得0或1:
nbtstat -A x.x.x.x | find "<00>" | find "GROUP" | find /c /i "eep202"
如果你真的只想在成功时回显“传递”,那么你需要编写一个批处理文件。我们称之为verify_eep202.bat:
@echo off
for /f "delims=" %%a in ('nbtstat -A %1 ^| find "<00>" ^| find "GROUP" ^| find /c /i "eep202"') do set found=%%a
if %found%==1 echo pass
然后您可以运行verify_eep202.bat x.x.x.x