批处理文件 - 代码不能正常工作?

时间:2014-09-12 18:30:07

标签: batch-file

我将findstr结果打印为文本文件并删除作为文本文件打印的文件,但我遇到了一些问题!

我的代码就像:

@echo off
findstr /s /m "Trojan" "C:\*.*">>"C:\result.txt" 2>nul 
for %%i in (C:\result.txt) do del %%i

但是,我无法借助上面的代码删除文件,因为它不会删除路径中有空格的文件

实施例 -

删除“C:\ Anything.exe”,其中“Trojan”为字符串

不删除以“Trojan”为字符串的“C:\ Anything xyz.exe”

请帮助优化我的代码!!!

1 个答案:

答案 0 :(得分:1)

for /f "delims=" %%i in (C:\result.txt) do del "%%i"

您需要for /f来读取文件,这是一个空的分隔符列表,以避免在读取文件时在空格上拆分行并在del命令中正确引用。