2014-02-24 57 views

回答

1

假設你的機器使用英語:產生

FOR /F %%i in (servers.txt) do FOR /F "delims=: tokens=2" %%j in (
    'nslookup %%i ^| find "Name:"' 
) do @echo %%j >> Devices_With_IP.txt 
1

嘗試使用您nslookup的輸出findstr命令只得到含有「名稱」行。

FOR /F %%i in (servers.txt) do FOR /F "tokens=2 usebackq delims=: " %%j in (`nslookup %%i ^| findstr Name`) do @echo %%j >> Devices_With_IP.txt 

請注意,我還重新安排在第二循環中的/F條件,以包括空間作爲deliminator,這消除了輸出前的前導空格。

使用find命令,而不是findstr -

FOR /F %%i in (servers.txt) do FOR /F "tokens=2 usebackq delims=: " %%j in (`nslookup %%i ^| find "Name"`) do @echo %%j >> Devices_With_IP.txt 

剛剛意識到使用發現的,而不是FINDSTR使得這個(幾乎)完全一樣dbenham的答案。

+0

無輸出。 – PeanutsMonkey

+0

@PananutsMonkey,我只是將重定向添加到您的'Devices_With_IP.txt',然後才輸出到終端。這是問題嗎? – unclemeat

+0

不是。我也有。沒有顯示結果,也沒有生成文件。 – PeanutsMonkey

相關問題