关于dos命令 for 的使用或 dir c:\test\test test\ 找不到路径的问题

问题描述:
我想用脚本删除固定的文件,但这些文件在路径上的文件夹有的包含空格从而导致无法找到文件
请帮忙分析下 先谢谢了哈!

删除文件 test.txt
文件所在路径: c:test\test test\test\
for /r c:test %m in (test.txt) do del %m

理想结果: 成功删除 c:test 下的所有text.txt 文件

现在的结果为: 找不到 c:test\test test\test\test.txt 路径
原因是test test这样的文件名不支持
例如dir c:test\test test\test\test.txt 同样找不到路径
修改为dir c:test\"test test"\test\test.txt 才可以

可是我在 for 里面如何给 test test 加双引号变为 "test test "

补充一下,我用的是windows 系统
[b]问题补充:[/b]
@for /r "C:\test\test test\" %%m in (test.txt) do @if exist %%m ( del "%%m" & echo 删除:%%m )

其中"test test" 前面有的路径无法确认 所以不能再路径上写死了
[b]问题补充:[/b]
首先谢谢bohemia (架构师) 的回复
我是先在dos下测试,然后再注入到脚本里.

我的意思是在c:\test到test test中间可能还有其他的路径
比如c:test\dir\test test\或 c:test\dir test\test test\
其中dir 和dir test 是不确定的路径
[b]问题补充:[/b]
刚才在忙没有注意一个细节 就是"%%m"

谢谢 bohemia (架构师)

[code="java"]@for /r "C:\test\test test\" %%m in (test.txt) do @if exist %%m ( del "%%m" & echo 删除:%%m )[/code]

这个脚本是DOS脚本.

[quote]@for /r "C:\test\test test\" %%m in (test.txt) do @if exist %%m ( del "%%m" & echo 删除:%%m ) [/quote]
这个会把 "C:\test\test test\" 目录以及子目录下的所有test.txt文件删除;