例如,您有一个批处理文件中的重命名命令,并且希望在当前目录和所有子目录上执行该文件。
假设你的批处理文件命名为myrename.cmd
,那么你可以轻松地执行以下操作:
call myrename.cmd
for /r /d %%x in (*) do (
pushd "%%x"
call myrename.cmd
popd
)
第一行会在当前目录运行,for
循环将递归(/r
)遍历所有目录(/d
)并执行括号中的内容。我们所做的是使用pushd
将目录更改为当前正在迭代的目录——这样你就可以用popd
撤消目录更改——然后运行命令,它将在我们刚刚切换到的目录中运行。
这假设批处理文件在路径中的某个地方。如果不是,并且恰好位于上面批处理文件所在的位置,则可以使用以下方法:
"%~dp0myrename.cmd"
%~dp0
这部分吗?请参考help for
以获取解释。 - Joey