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

[文本处理] [已解决]批处理for命令%%x的疑问

  1. for /f  %%a in ('命令') do (
  2.     for %%b in (%%a) do (
  3.         命令
  4. ))
  5. for /f %%a in ('命令') do set www=%%a
  6. for /f %%a in ('命令') do set tt=%%a
  7. for /f  %%a in ('命令') do (
  8.     for %%b in (%%a) do (
  9.         for %%c in (%%b) do (
  10. )))
复制代码
上面是一个批处理,for %%a 写的对不对?
不同的for都可以用一个%%a,还是在一个批处理要分开,
比如第一个用%%a ,第二个就用%%b ,第三个就用%%c
for /f %%c in ('命令') do set www=%%c
第四个用for /f %%d in ('命令') do set tt=%%d
1

评分人数

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

同意5#的观点

TOP

好的,明白了,谢谢各位!

TOP

回复 5# freesoft00
可以的,只是为了便于区分和可阅读性,建议不同的for语句用不同的%%?区别开来

TOP

回复 4# CrLf
  1. for /f  %%a in ('命令') do (
  2.     for %%b in (%%a) do (
  3.         for %%c in (%%b) do (
  4. )))
复制代码
这属于层级中的,这样用。

不在一个层级中的单独for(都在一个批处理中)
for /f %%a in ('命令') do set www=%%a
for /f %%a in ('命令') do set tt=%%a
都用一个%%A是否可以?

TOP

可以用同一个,不过里层的会顶替外层的,一般为了区分层级,建议从外到里用 a~z

TOP

哦,用一个%%a就可以了

TOP

  1. @echo off
  2. for %%a in (123) do for %%a in (%%a456) do echo %%a
  3. pause
复制代码

TOP

返回列表