我正在尝试获得特定适配器的第一个DNS服务器。
运行:netsh interface ip show dnsservers name="local area connection"为我提供了"local area connection"适配器的DNS服务器信息。
为了达到这个目的,我创建了如下代码(运行良好):@echo on
FOR/F "skip=1 tokens=6" %%j in ('netsh interface ip show dnsservers^| findstr/i/c:"DNS Servers"') DO Set DNS=%%j回声% DNS %
但是当它在特定适配器上运行时,它失败了。下列代码:
@echo on
FOR/F "skip=1 tokens=6" %%j in ('netsh interface ip show dnsservers name="本地连接"^| findstr/i/c:"DNS Servers"') DO Set DNS=%%j回声% DNS %
有人知道是什么导致了这个问题吗?
您在for
命令中的netsh
过滤器中的等号有问题。需要转义
FOR /F "skip=1 tokens=6" %%j in (
'netsh interface ip show dnsservers name^="local area connection"^| findstr /i /c:"DNS Servers"'
) DO Set DNS=%%j
echo %DNS%