[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 【已解决】请教批处理用什么方法可递增显示变量?

本帖最后由 licunwei 于 2024-1-15 13:07 编辑

请教,我想用递增的方式显示下面2个变量,大佬些 有什么方法,请教下。下面命令是错误的,为了表达意思而已。加一个检测出有几张网卡就只能循环几次更完美。
  1. @echo off
  2. Setlocal enabledelayedexpansion
  3. for /f "tokens=2 delims==" %%A in ('wmic nic where "NetEnabled='TRUE'" get NetConnectionID /value^|find "="') do (
  4. set /a m+=1
  5. set "winx!m!=%%A"
  6. )
  7. echo %winx1%   %winx2%
  8. set "m=0"
  9. :A
  10. set /a "m+=1"
  11. echo %winx!m!%
  12. pause
  13. goto A
复制代码
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

回复 1# licunwei
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "tokens=2 delims==" %%A in ('wmic nic where "NetEnabled='TRUE'" get NetConnectionID /value ^| find "="') do (
  4.     set /a m+=1
  5.     set "winx!m!=%%A"
  6. )
  7. for /l %%i in (1,1,!m!) do (
  8.     echo winx%%i=!winx%%i!
  9. )
复制代码
测试代码之前请做好备份

TOP

回复 2# ShowCode

不是我要的效果,我是要递增的方式显示 。大神能否帮忙改下。

TOP

回复 2# ShowCode


我要的是能够变量名称加1的方式来显示。%winx1% 加1  %winx2%   加1  %winx3%  这样循环递增到没有数据为止。

TOP

  1. @echo off
  2. set wm1=1
  3. set wm2=2
  4. set wm3=3
  5. for /f "usebackq" %%a in (` set wm`) do (
  6. echo %%a
  7. )
复制代码

TOP

回复 4# licunwei
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "tokens=2 delims==" %%A in ('wmic nic where "NetEnabled='TRUE'" get NetConnectionID /value ^| find "="') do (
  4.     set /a m+=1
  5.     set "winx!m!=%%A"
  6. )
  7. set "n=0"
  8. :Loop
  9. set /a "n+=1"
  10. echo,!winx%n%!
  11. pause
  12. if !n! lss !m! (
  13.     goto :Loop
  14. )
复制代码
1

评分人数

测试代码之前请做好备份

TOP

回复 6# ShowCode


完美   谢谢

TOP

返回列表