获取特定适配器的DNS服务器的批处理问题

时间:2014-07-01 15:44:19

标签: batch-file dns netsh

我正在尝试获取特定适配器的第一个DNS服务器。

正在运行:netsh interface ip show dnsservers name =“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   echo%DNS%

但是当针对特定适配器运行它时会失败。代码如下:

@echo on
     

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 = %%Ĵ   echo%DNS%

有没有人知道这个问题是什么?

1 个答案:

答案 0 :(得分:0)

netsh命令中for过滤器中的等号出现问题。它需要被转义

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%