for循环停止执行批处理文件

时间:2017-12-04 09:05:37

标签: batch-file

我尝试制作批处理文件,在这个批处理文件中我需要将所有旧文件夹移动到备份文件夹。

如果直接执行此命令,则可以正常工作:

for /f %a in ('dir /b D:\app\*_2*') do move D:\app\%a D:\app\Backup\

但是,如果我在批处理中使用它,批处理会自行关闭并且不执行脚本的其余部分。

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

此问题是由批处理文件中的parameter substitution引起的。要在批处理脚本中将%a传递给for命令,您必须使用%转义%%字符。

for /f %%a in ('dir /b D:\app\*_2*') do move D:\app\%%a D:\app\Backup\

另请参阅:https://ss64.com/nt/for.html

相关问题