当文件夹过大,或文件夹中文件过多时,如果快速删除这种超大文件夹是个麻烦事儿。
比如下载歌曲时,一个文件夹里的歌曲太多,不论是打开文件夹,还是删除都会非常缓慢,甚至死机。记得上次生成网站的静态页面,在一个文件夹中生成了十几万个文件,虽然每个文件只有几十k,但是对Windows来讲,要打开这个文件夹是很困难的,要删除这个超大文件夹也要你电脑半死。
这是因为Windows系统在删除文件时会显示一个进度条,显示当前已删除了哪个文件。为了这个进度条,Windows系统先要统计出文件夹里的文件总数目后再执行删除操作,这个统计过程就拖慢了文件删除速度,而真正删除文件其实只需要几秒钟或几分钟。
试了TC等各种流行的文件管理软件,效果都不好。Mini Explorer2-迷你资源管理器还不错,因为它太简单,就显示,复制移动删除等功能,不过我在Win2003上使用中不太稳定,出现程序非法操作。
最后还是原始的DOS命令在这个时候比较管用:
RMDIR [/S] [/Q] [drive:]path
RD [/S] [/Q] [drive:]path
/S 除目录本身外,还将删除指定目录下的所有子目录和
文件。用于删除目录树。
/Q 安静模式,带 /S 删除目录树时不要求确认
比如要删除C:\123文件夹,在Windows命令提示符中输入:
RD /s /q C:\123
回车即可,我删除那个十几万文件的文件夹,还是顿着不动好久才完成,不过至少不会把电脑搞死机。
微软也提供了一些删除文件和文件夹的脚本:http://www.microsoft.com/china/technet/community/scriptcenter/filefolder/default.mspx
下面还有一个关于文件删除的批处理:新 文本文档 写入下列命令:
DEL /F /A /Q \\?\%1
RD /S /Q \\?\%1
另存为"统统删除.Bat"
然后,把要删除的文件或者目录拖放到这个.Bat文件的 图标 上就可以删除了。
还有一个类似的批处理:
@echo off
:lab1
cls
color 2f
echo 专门快速删除那种不能打开、不能进入、不能删除的顽固目录。
echo.
echo 注意:删除目录将同时删除其子目录中所有数据!
echo.
echo.
set Choice=
echo 请将要删除的顽固目录直接拖入本窗口,然后回车:
echo.
set /p Choice=
if ""%Choice%"" == "" goto lab1
DEL /F /A /Q \\?\""%Choice%""
RD /S /Q \\?\""%Choice%""
echo.
echo 删除完成! 任意键退出……
pause>nul