页首Html代码

[批处理]强制删除文件及文件夹

电脑上经常会有无法删除的文件及其文件夹

比如损坏文件夹,畸形文件夹,含有系统名称的文件夹,含有权限的文件夹,或正在使用的文件夹

所以就做了个这么玩意,可以强制删除文件夹

 

1,比如这个带点的文件夹显示无法删除

那么拖进来。可以直接删除掉的

 

2、再看这个文件夹,带有权限的文件夹,一般情况下是根本无法访问的,就更别说删除了

 

一样拖过来看看照样可以删除掉

 

还有就是有很多里面有文件被正在使用而导致的无法删除

这个问题在CMD下不知道该怎么弄,没找到相应的命令

 

批处理代码,保存为bat文件运行即可:

@echo off
setlocal enabledelayedexpansion
echo 把要删除的文件或文件夹拖动到此处
set /p name=
set name=%name:"=%
:0
cls
echo 请选择要使用的删除模式
echo 1,快速删除模式(推荐)
echo 2,磁盘文件系统修复模式
set ans=n&set /p ans=请选择:
if %ans%==1 goto 1
if %ans%==2 goto 2
goto 0


:1
echo ===============================================
echo →删除文件夹模式:
rd "\\?\%name%" /s /q>nul
if %ERRORLEVEL%==0 (if EXIST "%name%" (echo ==失败==) else echo ==成功==&goto end) else  echo ==失败==
echo.

echo →删除文件模式:
del /f /s /q /a "\\?\%name%">nul
if %ERRORLEVEL%==0 (if EXIST "%name%" (echo ==失败==) else echo ==成功==&goto end) else  echo ==失败==
echo.
echo ===================
echo 快速删除模式失败,正在使用完全删除模式...

echo ===============================================
echo →正在构建目标的ACL访问权限控制表...
cacls "\\?\%name%" /e /c /p %username%:f
echo.

echo →正在清除目标的所有属性...
attrib "%name%" -h -s -a -r /s /d
echo.

echo →重试删除文件夹模式:
rd "\\?\%name%" /s /q>nul
if %ERRORLEVEL%==0 (if EXIST "%name%" (echo ==失败==) else echo ==成功==&goto end) else  echo ==失败==
echo.

echo →重试删除文件模式:
del /f /s /q /a "\\?\%name%">nul
if %ERRORLEVEL%==0 (if EXIST "%name%" (echo ==失败==) else echo ==成功==&goto end) else  echo ==失败==
echo.
echo ===================
echo 删除失败,如果不是因为正在使用而导致的可以尝试使用模式2
pause>nul&goto 0




:2
echo ===============================================

echo 如果是由于文件系统的原因而导致的无法删除可以用CHKDSK来修复磁盘错误,修复完成后即可正常删除文件。
echo 是否用使用CHKDSK命令来修复磁盘错误?[是:Y \ 否:任意键]
set ans=n&set /p ans=
if /i %ans%==y for /f %%i in ("%name%") do chkdsk %%~di /f /r /x
:end
echo END&pause>nul
exit

errorlevel:0 成功 1 失败
View Code

 

——原文发表于2010-6-4 21:39

posted @ 2015-06-17 16:53  沧海月明FE  阅读(4313)  评论(0编辑  收藏  举报