我是批处理脚本的新手,编写嵌套循环和变量扩展的任务让我感到困惑! 我需要在我的脚本中完成一个简单的任务:
DIRECTORIES是在其他地方生成的目录名列表。它看起来像一个字符串:" dir1,dir2,dir3"。
还有LOCATION变量,在之前设置。
我需要遍历目录名称并对它们进行一些处理(这里省略)。
如果要将%LOCATION%\(当前.txt)中的所有文本文件重命名为.bbb(但不要触摸那些名为' dir'或"的一个"
我已创建此脚本。但它并没有像预期的那样发挥作用。它在没有外循环的情况下运行良好,但是当%% a在嵌套循环的定义中遇到%% b时,我想有变量名扩展会出错。
for %%a in (%DIRECTORIES%) do (
... [do some work]
:: Rename all .txt files to .bbb (except one.txt and __two__.txt)
for /r %LOCATION%\%%a %%b in (*.txt) do (
(Echo "%%b" | FINDSTR "dir __one__" 1>NUL) || (
ren "%%b" "%%~nb.bbb"
)
)
)