2014-02-24 196 views
1

我有代碼循環通過一個文件的服務器列表,然後執行nslookup命令。Windows批處理文件循環問題

代碼

setlocal EnableDelayedExpansion 
set file=servers.txt 
FOR /F %%i IN (%file%) DO (
set server=%%i 
nslookup !server! 
) 

問題

  1. 即使有一個單一的線,它永遠
  2. 循環nslookup命令沒有返回值
+2

我猜你的批處理文件名爲nslookup.bat? – jeb

+0

@jeb - 這是正確的 – PeanutsMonkey

+0

@jeb - 改變了名稱,它的工作。爲什麼nslookup.bat沒有工作?如果你回覆帖子,爲什麼nslookup.bat不起作用,我會接受它。 – PeanutsMonkey

回答

2

小號因爲你的批處理文件叫做nslookup - 行nslookup !server!正在調用批處理腳本本身,它的參數爲!server!(當然這個參數沒有被使用),而不是實際的nslookup命令。

要解決該問題,您需要重命名該批處理文件。