作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我正在尝试根据其循环变量值分配一个变量,以便在循环结束时我可以在一行中回显每个结果。通用命令是一个 nslookup,查询多个服务器。我正在抓取名称结果的开头(直到第一个点)以显示基于 5 秒延迟的结果。我留在了第二个版本的命令中,我也尝试过但已删除。我也无法让目标填充和回显。
setlocal enabledelayedexpansion
For %%s IN (111.111.0.2, 111.111.0.3, 111.111.9.2, 111.111.9.3) do (
for /L %%l IN (1,1,5) DO (
set Target=%e%%l.testedge.test.tld%
for /f "tokens=2 delims=:." %%G IN ('nslookup e%%l.testedge.test.tld %%s ^|find "Name:"') do set %Result%%l%=%%G
REM set Result%%l=%for /f "tokens=2 delims=:." %%G IN ('nslookup e%%l.testedge.test.tld %%s ^|find "Name:"') do echo %%G%
REM for /f "tokens=2 delims=:." %%G IN ('nslookup e%%l.testedge.test.tld %%s ^|find "Name:"') do set !Result%%1!=%%G
ping 1.1.1.1 -n 1 -w 5000 > nul
)
echo %%s,%Target%,%Result1%,%Result2%,%Result3%,%Result4%,%Result5%
)
nslookup 结果看起来像
Name: e1.testedge.test.tld
Name: user-data.e1.testedge.test.tld
Name: user-data.e1.testedge.test.tld
因此 for 循环获取 e1、用户数据和用户数据。我需要将它们分配给一个持久变量,以便在循环结束时回显。我计划附加到 csv,以便我们可以以电子表格形式打开(通过 20 台服务器查找 70 多个地址)进行审查。我希望输出像
Nameserver Target 1st 2nd 3rd 4th 5th
111.111.0.2,e1.testedge.test.tld,e1,user-data,user-data,user-data,user-data
111.111.0.2,e2.testedge.test.tld,e2,user-data,user-data,user-data,user-data
111.111.0.2,e3.testedge.test.tld,e3,user-data,user-data,user-data,user-data
111.111.0.2,e4.testedge.test.tld,e4,user-data,user-data,user-data,user-data
最佳答案
我认为这就是您正在尝试的。
@echo off
setlocal enableextensions enabledelayedexpansion
For %%s IN (111.111.0.2, 111.111.0.3, 111.111.9.2, 111.111.9.3) do (
for /L %%l IN (1,1,5) DO (
set "Target=e%%l.testedge.test.tld"
for /f "tokens=2 delims=:." %%G IN ('nslookup !Target! %%s ^|find "Name:"') do set "Result%%l=%%G"
)
echo %%s,!Target!,!Result1!,!Result2!,!Result3!,!Result4!,!Result5!
)
关于windows - 在 Windows 批处理脚本中使用循环变量作为新变量的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20430795/
我是一名优秀的程序员,十分优秀!