如何使用 .bat 或 .cmd 文件遍历目录中的每个文件?
为简单起见,请提供一个仅回显文件名或文件路径的答案。
命令行用法:
for /f %f in ('dir /b c:\') do echo %f
批处理文件使用:
for /f %%f in ('dir /b c:\') do echo %%f
更新 :如果目录包含名称中带有空格的文件,则需要更改for /f命令使用的分隔符。例如,您可以使用管道字符。
for /f
for /f "delims=|" %%f in ('dir /b c:\') do echo %%f
更新 2 :(在原始答案之后一年半:-)) 如果目录名称本身的名称中有空格,则可以使用以下usebackq选项for:
usebackq
for
for /f "usebackq delims=|" %%f in (`dir /b "c:\program files"`) do echo %%f
如果您需要使用输出重定向或命令管道,请使用转义字符 ( ^):
^
for /f "usebackq delims=|" %%f in (`dir /b "c:\program files" ^| findstr /i microsoft`) do echo %%f