Resolve o DNS do arquivo de texto para o endereço IP

0

Atualmente, posso buscar um endereço IP de um servidor DNS com o primeiro comando mostrado abaixo. No entanto, é tedioso digitar um servidor DNS por vez e executar o comando. Eu tentei no passado executar este for /F %i in (dns.txt); do nslookup %i; > ips.txt; e funciona. No entanto, estou tentando aplicar o mesmo conceito ao comando abaixo. Como posso resolver o endereço DNS de um arquivo de texto, converter endereços IP e resultado de saída em novo arquivo de texto?

Funciona apenas para 1 DNS para o endereço IP

for /f "skip=4 usebackq tokens=2" %a in ('nslookup somedns.com') do echo %a  > ips.txt
    
por MaryCoding 28.09.2015 / 18:14

1 resposta

1

Eu acho que o erro é o operador > . Isso realmente truncará o arquivo e, em seguida, gravará a saída no arquivo ips.txt , mas você estará em um loop e truncará o arquivo todas as vezes. Experimente o operador >> .

for /f "skip=4 usebackq tokens=2" %a in ('nslookup somedns.com') do echo %a >> ips.txt

EDIT : Para fazer um loop em um arquivo e obter o endereço IP de cada host DNS, você faria algo assim:

for /f "tokens=*" %%A in (yourhostsfile.txt) do nslookup %%A >> ips.txt
    
por 28.09.2015 / 18:17