无法从批处理脚本保存输出内容

时间:2013-07-19 14:13:06

标签: windows batch-file

我希望从我的网络中获取计算机名称,所以我决定使用以下脚本:

   for /L %%N in (1,1,10) do nslookup 132.147.160.%%N
    PAUSE

使用此命令,一切都在命令提示符下正确显示。

但最后一个不太好:

for /L %%N in (1,1,256) do nslookup 132.147.160.%%N >nslookup.txt
PAUSE

首先,命令提示符显示错误的内容(添加了非期望的“1”,我不知道为什么):

    C:\Users\Toshiba\Desktop>nslookup 132.147.160.1  1>nslookup.txt

C:\Users\Toshiba\Desktop>nslookup  132.147.160.2  1>nslookup.txt
*** serveur1.mycompany.fr ne parvient pas à trouver 132.147.160.2 : Non-exi
stent domain

C:\Users\Toshiba\Desktop>nslookup  132.147.160.3  1>nslookup.txt
*** serveur1.mycompany.fr ne parvient pas à trouver 132.147.160.3 : Non-exi
stent domain

C:\Users\Toshiba\Desktop>nslookup 132.147.160.4  1>nslookup.txt
*** serveur1.mycompany.fr ne parvient pas à trouver 132.147.160.4 : Non-exi
stent domain
[ ... etc]

还有nslookup.txt

我有不超过此输出:

Serveur :   serveur1.mycompany.fr
Address:  132.147.160.1

Nom :    132.147.160.256
Address:  60.200.60.100

拜托,我做错了什么?

谢谢

1 个答案:

答案 0 :(得分:2)

试试这个:

@ECHO OFF &SETLOCAL
for /L %%N in (1,1,10) do nslookup 132.147.160.%%N >>nslookup.txt 2>&1
TYPE nslookup.txt

要从nslookup.txt删除错误消息,只需删除2>&1