2016-11-16 5 views
-1

У меня есть небольшой nslookup .cmd, который дает мне больше выходных данных, чем нужно. Я уже знаю имена машин, которые я ищу, а также имя DNS, единственная информация, которая мне нужна, это адрес машины.Обработка вывода для nslookup

@echo off 

set variable=1 

:start 
nslookup ***-%variable%.****** >> test.txt 
set /a variable=variable+1 

timeout /t 3 

if %variable% LSS *** goto start 

:next 

Это то, что я получаю в моем файле .txt, если Nslookup нашел машину:

Сервер: **********

Адрес: .. .

Имя: **** **** ****

Адрес:.. .. .

Но если не нашли машину, я все еще получаю:

Сервер: **********

Адрес: .. .

Может вывод можно манипулировать таким образом, что он пишет только в .txt, когда он на самом деле находит машину и только принимает адрес часть?

ответ

0

, если вы не против выполнения nslookup дважды на один сервер (один раз, чтобы проверить, если существует сервер, второй, чтобы получить выход):

nslookup ***-%variable%.****** 2>nul|findstr /b "Name:">nul && nslookup ***-%variable%.****** >> test.txt