Board logo

标题: 请问用for+del 命令如何删除路径中有空格的文件 [打印本页]

作者: sqn     时间: 2006-5-31 19:36    标题: 请问用for+del 命令如何删除路径中有空格的文件

用命令
for /r "C:\Documents and Settings\enc\My Documents" %%1 in (*.log *.tmp) do del %%1

运行时却出错:
系统找不到指定的路径

另外,文件名中有空格的也不能删除(聪明的 xp 将其识别为 n 部分)

why
作者: fujianabc     时间: 2006-5-31 20:18
%1是指短文件名,长文件名是"%l",带引号就解决了文件名带空格的问题。

另外,普通命令中用一个百分号,放批处理中则用两个百分号。
作者: chineselgs     时间: 2006-6-4 16:26
楼上说的好象很不好用
作者: ily2013     时间: 2006-6-4 16:44
我也有类似的问题,用for对临时文件操作时不成功!
作者: 不得不爱     时间: 2006-6-4 22:20
命令错误!
作者: 不得不爱     时间: 2006-6-4 22:43
在没;命令里输入:
for /r "C:\Documents and Settings\enc\My Documents" %1 in (*.log *.tmp) do del "%1"
在批处理里输入:
for /r "C:\Documents and Settings\fff\My Documents" %%1 in (*.log *.tmp) do del “%%1”
作者: fujianabc     时间: 2006-6-5 11:09
注意2楼写的,是l(小写字母) 不是1(数字)。
作者: 不得不爱     时间: 2006-6-5 11:15


  Quote:
Originally posted by fujianabc at 2006-6-5 11:09:
注意2楼写的,是l(小写字母) 不是1(数字)。

都1样,不信你试下!
作者: ily2013     时间: 2006-6-5 20:53
6楼正确!
再问一个:
想在搜索到的文件里找到某个文件而不是删除操作!
比如在C:\Documents and Settings\Administrator\Local Settings\Temporary Internet Files\下搜索文件大于20kb的文件,或某个特定时间的!
作者: bagpipe     时间: 2006-6-6 08:53
楼上可以试试这个来判断文件大小
@echo off
setlocal enabledelayedexpansion
set a=
for /r "C:\Documents and Settings\Administrator\Local Settings\Temporary Internet Files" %%i in (*.*) do if %%~zi  GTR 20480 set a=%%i  !a!
echo 大于20K的文件有  %a%

而对于时间来说,只能得到文件的修改时间
作者: gwlok     时间: 2006-6-9 09:35
学习了我今才知道还有这个命令,我以前只知道 Rd  del  这两个删除命令
作者: ily2013     时间: 2006-6-9 21:13
强!谢谢!
作者: lyaa     时间: 2007-9-14 09:53


  Quote:
Originally posted by bagpipe at 2006-6-6 08:53 AM:
楼上可以试试这个来判断文件大小
@echo off
setlocal enabledelayedexpansion
set a=
for /r "C:\Documents and Settings\Administrator\Local Settings\Temporary Internet Files" ...

怎样同时显示隐藏文件??
作者: ThinKing     时间: 2007-9-14 10:22
For /R 无法遍历出隐藏文件。
作者: kgdetg1127     时间: 2007-10-4 15:40
好,学习了!!!
作者: reubon     时间: 2007-10-4 16:04
太强太强了