例如,您在批处理文件中有一个重命名命令,并且您希望在当前目录和所有子目录上执行该文件。
答案 0 :(得分:16)
假设您的批次的名称类似于myrename.cmd
,那么您可以轻松执行以下操作:
call myrename.cmd
for /r /d %%x in (*) do (
pushd "%%x"
call myrename.cmd
popd
)
第一行将为当前目录运行它,for
循环将在所有目录(/r
)上递归迭代(/d
)并执行括号中的部分。我们在其中做的是将目录更改为我们当前正在使用pushd
进行迭代的目录 - 具有可以使用popd
撤消该目录更改的nice属性 - 然后运行命令,然后将在我们刚刚切换到的目录中运行。
这假设批次位于路径中的某个位置。如果它没有并且恰好位于上面的批处理文件所在的位置,则可以使用
"%~dp0myrename.cmd"