找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 25555|回复: 5

[其他] 批处理变量中的变量如何引用?

[复制链接]
发表于 2015-7-15 14:49:58 | 显示全部楼层 |阅读模式
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "tokens=4*" %%i in ('netsh interface show interface') do (
  4.     set /a n+=1
  5.     set v!n!="%%i %%j"
  6.     echo v!n!
  7. )
  8. @pause
复制代码
上面 echo v!n! 是错误的。
这一句怎么改才能达到 echo "%%i %%j" 同样的效果?
求指教。
发表于 2015-7-15 14:59:01 | 显示全部楼层
发表于 2015-7-15 15:19:58 | 显示全部楼层
5、6行合并成一行
  1. echo v!n!="%%i %%j"
复制代码
发表于 2015-7-15 15:33:40 | 显示全部楼层
本帖最后由 tigerpower 于 2015-7-15 15:55 编辑
  1. call echo %%v!n!%%
复制代码
  1. cmd /c echo %%v!n!%%
复制代码
 楼主| 发表于 2015-7-15 17:58:17 | 显示全部楼层
回复 4# tigerpower


    谢谢!
 楼主| 发表于 2015-7-15 18:03:47 | 显示全部楼层
谢谢各位的帮助!

我最终用了 4 楼大哥指点的方法。
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set /a n+=1
  4. for /f "tokens=4*" %%i in ('netsh interface show interface') do (
  5.     set v!n!="%%i %%j"
  6.     call echo %%v!n!%%
  7. )
  8. @pause
复制代码
其实我最终是想像数组一样使用。

我的目的是想检测有哪些网卡,然后查找这些网卡里面,哪些是设置了 10.76. 段开始的IP地址。
找到后就修改这个网卡的DNS地址。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-19 00:05 , Processed in 0.018998 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表