BAT批处理高手来下

来源:百度知道 编辑:UC知道 时间:2024/05/24 23:54:01
我要删除 电脑里任何盘符任何目录下

以 "SSS"为名的文件夹与其子目录

请教高手........
乙卜 的不对....在线等。..............急.....

rabbit5455 大哥的貌似很全面 可是看不懂......

我只想以BAT单个文件来实现删除....

举例说明是最好的。.... 因为 就像

rabbit5455 大哥的我实在是看不懂...

小楼_春雨 大哥的不错...可是删除不能实现....我试过了...

大虾们快来哦.......帮帮我。....

如果根目录下存在sss文件夹,则此分区下的所有sss文件夹都不能被删除,这是由于 dir /s %%i:\sss 的二义性引起的,所以,6楼的代码仍然不完善,修改后的代码如下:
@echo off
for %%i in (c d e f) do (
rd /q /s %%i:\sss 2>nul
for /f "delims=" %%j in ('dir /ad /b /s %%i:\sss 2^>nul') do rd /q /s "%%j"
)
pause

if exist a:\sss deltree a:\sss
.
.
.
if exist z:\sss deltree z:\sss
当然可以写成for(a->z)的循环啊,不过好久没有玩过这东西了,所以忘了格式了,哈哈

可以通过查找删除....

可以用vbs来做的,写一个遍历目录的函数,算法就用树的分层遍历就行,
先删除根目录(0级)下的sss,把没删除的记录下来,再遍历他们,删除1级
目录下面的sss,把没有删除的记录下来,如此往复,直到遍历所有的目录。

具体代码框架:
声明: 两个集合a和b,用来存放目录
初始化:将0级目录(a:\|b:\|c:\等)写入一个集合

开始循环:
清空目录b
遍历a集合中目录的子目录(1级目录)
删除其中的sss,并将非sss写入另外一个集合b
将a和b交换一下
继续循环

这样就可以把这棵目录树遍历完,当然删除也就结束了。
===========================
我以前做过数据库的树形遍历,就是这样来做的。

你再试试。。。。。

复制以下内容保存为a.bat并运行