bat批处理之&拖动多个文件到bat图标删除文件
本帖最后由 zhengzhenhui945 于 2024-7-14 01:15 编辑如题-拖动多个文件到bat图标删除文件,(删除后不进回收站)
把代码保存下来,粘贴到txt,将.txt后缀改为.bat后缀,放到自己需要处理的目录即可
@echo off
setlocal EnableDelayedExpansion
:loop
if "%~1"=="" goto :end
del /f /q "%~1"
rd /S /q "%~1"
shift
goto :loop
:end
endlocal
exit
这段批处理代码的主要作用是遍历传入的参数,并依次删除文件或文件夹。以下是对代码的注释:
[*]@echo off :关闭命令的回显。
[*]setlocal EnableDelayedExpansion :启用延迟环境变量扩展。
[*]:loop :定义一个标签 loop ,用于循环跳转。
[*]if "%~1"=="" goto :end :如果没有传入参数了,就跳转到 :end 标签结束程序。
[*]del /f /q "%~1" :强制、安静地删除指定的文件。
[*]rd /S /q "%~1" :强制、安静地删除指定的文件夹及其子文件夹和文件。
[*]shift :将参数列表中的参数向左移动一位,以便处理下一个参数。
[*]goto :loop :跳转到 loop 标签继续处理下一个参数。
[*]:end :定义结束标签。
[*]endlocal :结束本地环境变量的设置。
[*]exit :退出批处理程序。
很方便永久删除文件 省去了shift键,简单高效。 这款一直在用 能否把执行失败的提示一下哟 本帖最后由 ot1686 于 2024-7-14 13:15 编辑
其实我只寫了二行就
DEL /F /A /Q \\?\%1
RD /S /Q \\?\%1
即可
还有有高端版
@echo off
:lab1
cls
color 2f
echo.
echo 【顽固目录删除器】
echo -------------------------------
echo.
echo.
echo.
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 ot1686 发表于 2024-7-14 13:10
其实我只寫了二行就
DEL /F /A /Q \\?\%1
复制过来,改变成.bat文件,双击一闪而过,不能执行。啥情况?WIN11 ot1686 发表于 2024-7-14 13:10
其实我只寫了二行就
DEL /F /A /Q \\?\%1
大佬,将要删除的文件拖到高端版批处理上,批处理只闪一下绿色界面就退出了,文件实际没删除,不知道哪里我没弄合适,谢谢大佬! 还有个奇特的玩法,只删除文件从而保留文件夹@echo off
echo
DEL /F /A /Q "%~1"
lazhou 发表于 2024-7-14 15:00
大佬,将要删除的文件拖到高端版批处理上,批处理只闪一下绿色界面就退出了,文件实际没删除,不知道哪里 ...
這個运行后才把文档托曳进去去即可
页:
[1]
2