看到一篇好文章,打算转载。
原文链接:https://blog.****.net/linbaoxin111/article/details/78555853
利用批处理命令能够大幅度提升删除速度。这里将批处理文件里的命令分享给大家。
首先创建一个“新建文本文档.txt”,并在里面输入下列代码:
@echo off
echo --------------------WARNING--------------------
echo [%1] folder will be deleted
echo --------------------WARNING--------------------
pause
echo Deleting [%1] folder.
time /T
del /f/s/q %1 >nul
rmdir /s/q %1 >nul
echo Files and folders have been deleted successfully!
time /T
pause
输入好之后,"ctrl+S"保存一下,并将文件重新命名为"快速删除.bat"。(注意后缀一定要改为.bat)
然后将需要删除的文件夹/文件用鼠标拖到这个"快速删除.bat"文件上,就会提示:X:/XXX/XXX folder will be deleted。
如果此时不想删除这个文件夹/文件,直接点击右上角的“X”关闭命令提示符。否则一旦按下任意键,文件夹以及里面的文件将会被全部删除。
原理等附录:(转载说:其实这是批处理的一种应用,大家可以学习一下。)
del:DOS命令下的删除命令。
DEL [/P] [/F] [/S] [/Q] [/A[[:]attributes]] names
ERASE [/P] [/F] [/S] [/Q] [/A[[:]attributes]] names
names:指定一个或多个文件或者目录列表。通配符可用来删除多个文件。如果指定了一个目录,该目录中的所有文件都会被删除。
/P 删除每一个文件之前提示确认。
/F 强制删除只读文件。
/S 删除所有子目录中的指定的文件。
/Q 安静模式。删除全局通配符时,不要求确认。
/A 根据属性选择要删除的文件。
属性:
R 只读文件
S 系统文件
H 隐藏文件
A 存档文件
I 无内容索引文件
L 重分析点
- 表示“否”的前缀
del /f/s/q %1 >nul 这个用来删除文件夹里面所包含的所有文件,但是文件夹都会被保留。结果是很多个空文件夹,一个套一个这样。
rmdir /s/q %1 >nul 这个用来删除留下来的文件夹。(其实这一句命令也可以将整个文件夹里面的文件和子文件夹全部删除,但是好像del删除文件的速度更快,所以此处就用del将文件先全部删除,再用rmdir将文件夹删除,最终达成实现删除整个文件夹里的内容及文件夹的目标)。
注:del无法删除文件夹,rmdir无法删除单一的,不在文件夹里的文件。