批处理,删除D:\目录下的所有名称为Temp的文件夹

删除所有名称为Temp的文件夹,Temp在不同的目录下都有,而且Temp目录下有其他的文件或文件夹::====为什么我下面这些脚本不行呢,能否帮我找下原因,谢谢啦@ech... 删除所有名称为Temp的文件夹,Temp在不同的目录下都有,而且Temp目录下有其他的文件或文件夹
::====为什么我下面这些脚本不行呢,能否帮我找下原因,谢谢啦

@echo off
Echo.
Set /p tmpDir=请录入要操作的文件的路径(不能包含空格,不能以‘\’结尾):

:Begin
Echo.
Echo.1.批量删除文件
Echo.2.批量删除文件夹
Echo.3.查找文件或文件夹
Echo.0.退出
Choice /c 1230 /m "请选择所要进行的操作:"
if errorlevel 4 goto End
if errorlevel 3 goto FindAll
if errorlevel 2 goto DelDir
if errorlevel 1 goto DelFile

:DelFile
Echo.
Set /p tmpDelFile=请录入要批量删除的文件的名称:
attrib -s -h -r /s /d %tmpDir%\*%tmpDelFile%
del /s /q %tmpDir%\*%tmpDelFile%
goto Begin

:DelDir
Echo.
Set /p tmpDelDir=请录入要批量删除的文件夹的名称:
attrib -s -h -r /s /d %tmpDir%\*%tmpDelDir%
for /f "delims=" %%i in ('dir/s/b/ad %tmpDir%\')do if /i "%%~nxi"=="%tmpDelDir%" rd/s/q "%%i"
goto Begin
操作时出现
参数格式不正确 -
系统找不到指定的文件。
展开
 我来答
cctc_av
2010-07-23
知道答主
回答量:13
采纳率:0%
帮助的人:12.5万
展开全部
楼主说的文件夹无法删除问题,可以使用以下方法进行删除:

通常经验来看,文件夹无法删除是由于常用软件出现错误,程序与文件夹保持通信不释放造成了无法通过Windows删除,而如果按网上教程所说的:

1、注消或重启电脑,然后再试着删除。

2、进入“安全模式删除”。

3、在命令行下使用DEL、DELTREE和RD命令删除。

4、先删除该文件夹中的子目录和文件,再删除文件夹。

等方法都是无效的,这也正是为什么文件夹无法删除这一问题始终困扰大量用户的原因。

最可怕的是,还有一些黑客利用淘宝秒杀器的名头,提供淘宝秒杀器下载,并且捆绑流氓软件或是木马病毒,网民一不小心就中了圈套,轻则电脑被安装了无法清除流氓插件,造成桌面图标无法删除等棘手问题,重则直接被植入远程控制、盗号木马,个人隐私,网游账户尽在黑客掌握之中。

对于上述问题,一般的方法绝对无法解决,使用可牛杀毒文件粉碎机进行彻底清除,功能如下:

1、清除顽固 文件,不留痕迹。

2、清除顽固文件夹,不留痕迹。

3、支持将文件直接拖拽进粉碎机,粉碎更方便。

文件粉碎步骤:

1.首先选择无法删除的文件夹。

2.勾选要删除的目录。

3.点击粉碎按钮,删除文件夹即可。

百度搜索:可牛杀毒-文件粉碎工具
yyykkkyyyy
2010-07-16 · TA获得超过3136个赞
知道大有可为答主
回答量:2691
采纳率:40%
帮助的人:3268万
展开全部
批处理文件不要放在要删的目录下:

@echo off
for /f "delims=" %%i in ('dir/s/b/a/ad d:\')do if /i "%%~nxi"=="temp" rd/s/q "%%i"

补充
你也没说你运行出了什么状况,以下几点供参考:
1 系统里有无choice命令(它是个外部命令,我的机子xp命令行就没有)其实它可以用set/p代的
2 几处有set/p命令,那么if判断时,必须完全对应,加了/i可以忽略大小写但还有空格或其它问题
3 这条是建议,如果是整个目录全删,那么没必要去删它之下的子目录和文件,也没必要用attrib去属性,但在for /f命令中利用dir把它列出来,有隐藏属性的它不会显示,可以加参数 /a 然后用rd/s/q 就行(这条命令威力大,错删后果严重,所以最好先测试,把它要删的内容先显示出来,正确了再改用rd/s/q执行)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
马丁武
2010-07-15 · TA获得超过124个赞
知道小有建树答主
回答量:88
采纳率:0%
帮助的人:117万
展开全部
这个批处理可以实现:

=====================================================================
@echo off
for /f "delims=" %%i in ('dir D:\ /b /ad /s') do (if %%i==Temp del %%i)
=====================================================================
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小麦的软件工厂
2010-07-16 · TA获得超过396个赞
知道小有建树答主
回答量:512
采纳率:0%
帮助的人:427万
展开全部
Set /p tmpDir=请录入要操作的文件的路径(不能包含空格,不能以‘\’结尾):
你这个没有输入C:\temp吧??
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式