[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
今天我遇到了类似的问题,不过找到了更简洁的代码,分享下:
  1. @echo off
  2. pushd %~dp0
  3. setlocal enabledelayedexpansion
  4. (for /f %%a in (list.txt) do (
  5.     for /f "skip=1 tokens=1,2 delims=: " %%i in ('nslookup %%a 2^>nul^|findstr "[0-9]$"') do echo %%j#%%a
  6. ))>Answer.txt
复制代码

TOP

本帖最后由 lantern 于 2015-1-7 00:48 编辑

回复 16# dqcmjx
如果domain.txt存放要查询的域名,dns.txt存放要查询的DNS,该怎么写?谢谢
假设domain.txt
  1. google.com
  2. google.com.hk
  3. google.com.tw
复制代码
dns.txt
  1. 8.8.8.8
  2. 8.8.4.4
  3. 114.114.114.114
  4. 114.114.115.115
复制代码
需要执行:
  1. nslookup domain dns
复制代码
改成这样执行后Answer.txt里没有内容
  1. @echo off
  2. pushd %~dp0
  3. setlocal enabledelayedexpansion
  4. for /f %%a in (domain.txt) do (
  5. for /f %%b in (dns.txt) do (
  6. for /f "skip=1 tokens=1,2 delims=: " %%i in ('nslookup %%a %%b 2^>nul^|findstr "[0-9]$"') do echo %%j#%%a
  7. ))>Answer.txt
复制代码

TOP

回复 1# 宫商角徵羽


    http://www.enun.net/?p=1376

TOP

回复 17# lantern

可以改成这样:
  1. @echo off
  2. pushd %~dp0
  3. setlocal enabledelayedexpansion
  4. (for /f %%a in (domain.txt) do (
  5.     for /f %%b in (dns.txt) do (
  6.         for /f "skip=1 tokens=1,2 delims=: " %%i in ('nslookup -qt^=a %%a %%b 2^>nul^|findstr "[0-9]$"') do echo %%j#%%a
  7.     )
  8. ))>Answer.txt
复制代码
我测试了,Answer.txt的内容如下:
173.194.72.102#google.com
173.194.72.139#google.com
173.194.72.100#google.com
173.194.72.138#google.com
173.194.72.101#google.com
173.194.72.113#google.com
……(太长,后面省略)

TOP

回复  lantern

可以改成这样:我测试了,Answer.txt的内容如下:
173.194.72.102#google.com
173.194 ...
dqcmjx 发表于 2015-1-7 17:13

为何在我这里执行完Answer.txt还是没内容呢?奇怪...
代码没错吧?

TOP

返回列表