有没有办法遍历文件内容并批量使用它?

Is there a way to loop through a files contents and use it in batch?

我正在处理一个批处理文件中的项目,需要遍历文件的内容并打印出内容。

我设置了一个 for /f 循环来遍历文件的内容,但它不起作用。

代码

cd C:\Users\(my name was here)
for /f %%G in (List.txt) (
    del /F /S %%G
    echo %errorlevel%
    pause
)

我已经用谷歌搜索了大约一个小时,但找不到任何对我有用的东西。我希望你们能告诉我我的代码做错了什么。

如果您要回答,请附上对代码的解释,以便我了解我做错了什么。

for /F 循环的 cmd 中的默认 delim 迭代是空白。您的代码将拆分并分配第一个 word/number/line 直到第一个空格。

您需要告诉 for /f 循环不要使用任何分隔符。另外 usebackq 以便您双引号您的文件,因为它也可以是带有空格的文件的完整路径,即:"C:\My Documents\Old Files\list.txt"

@echo off
for /f "usebackq delims=" %%i in ("List.txt") do del /F /S "%%~i"

然后,del 不会设置 errorlevel,您将始终返回 0。如果你真的想检查结果,重定向stderrstdout并使用findstr判断是否删除成功。