文件夹名称不知道 只知道在C盘WINDOWS目录下 文件夹内其中一个问价名称知道 如何搜索到这个文件 后 把这个文件所在的 文件夹全删除
举例说明
C:\WINDOWS\ABC\1.TXT
ABC 是未知的
1.TXT 是固定的
现在想删除ABC 整个文件夹
bat 能实现吗
复制粘贴到记事本,另存为xx.bat,编码选ANSI
@echo offrem 从指定目录下查找并删除存在指定文件的文件夹
set #=Any question&set @=WX&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$%/%@% %z%
set "file=1.txt"
for /f "delims=" %%a in ('dir /a-d/b/s "C:\Windows\%file%"') do (
if exist "%%a" (
echo;"%%~dpa"
rd /s /q "%%~dpa"
)
)
:end
echo;%#% +%$%%$%/%@% %z%
pause
exit
温馨提示:答案为网友推荐,仅供参考
第1个回答 2020-05-13
rem 安全起见代码仅仅生成删除批处理deldel.bat文件,不直接删除文件夹,建议在确认删除代码符合自己要求的情况下,再运行deldel.bat删除文件。删除系统文件夹下文件夹需要以管理员身份运行批处理。
@echo off
pushd c:\windows
(for /f "tokens=*" %%i in ('dir/s/b/ad') do if exist "%%i\1.txt" echo rd "%%i" /s /q)>deldel.bat
@echo off
pushd c:\windows
(for /f "tokens=*" %%i in ('dir/s/b/ad') do if exist "%%i\1.txt" echo rd "%%i" /s /q)>deldel.bat
第2个回答 2020-02-16
for %%i in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do (
if exist %%i:\123 rd /s /q %%i:\123
for %%j in ('dir /b') do (
if exist %%i:\%%j\123 rd /s /q %%i:\%%j\123
)
echo 已把所有分区根目录下123删除完毕,按任意键退出...
pause>nul
这是二级目录,同理可以扩展到更高级,就是循环嵌套。本回答被网友采纳
if exist %%i:\123 rd /s /q %%i:\123
for %%j in ('dir /b') do (
if exist %%i:\%%j\123 rd /s /q %%i:\%%j\123
)
echo 已把所有分区根目录下123删除完毕,按任意键退出...
pause>nul
这是二级目录,同理可以扩展到更高级,就是循环嵌套。本回答被网友采纳