批处理 FOR 循环出现问题



我正在尝试制作一个简单的批处理程序,该程序将对目录中的文件进行排序,并根据文件名删除某些文件。由于我是批处理编程的新手(所以请原谅任何明显的愚蠢错误(,我想我会先尝试单独熟悉 FOR 循环。

总的来说,我一直在寻找有关 FOR 循环的任何好的综合教程时遇到问题,并且发现 cmd 的帮助不足。

我创建了以下代码,我认为它应该列出当前目录和所有子目录中的所有文件:

@echo off
pause
for /R %%G in ( * ) do(
echo %%G)
pause

但是,当我运行它时,窗口只是关闭而不执行命令或暂停。

上面的代码有什么错误,除此之外,任何人都可以提供任何指导,说明我可以从哪里开始尝试制作我在开头提到的程序(用于根据名称删除某些文件(?

谢谢:)

一定要在do后面加一个空格。如果您删除或注释掉@echo off行,您将很容易看到这一点。

@echo off
pause
for /R %%G in ( * ) do (
echo %%G
)
pause

最新更新