中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 求助!如何寻找所需的并删除文件夹(已解)
« [1] [2] »
作者:
标题: 求助!如何寻找所需的并删除文件夹(已解) 上一主题 | 下一主题
austion
初级用户





积分 178
发帖 82
注册 2006-5-12
状态 离线
『楼 主』:  求助!如何寻找所需的并删除文件夹(已解)

由于WINDOWS升级会在%windir%目录下生成$****$的文件夹,由于一般情况下这些文件夹没什么作用所以想做个批处理来把这些文件夹给删除掉,请高手们解答一下。
就是如何把%windir%目录下全部升级备份文件夹$****$及其下的全部内容给删除?删除文件可以用通配符,但我用del却行不通。用rd的话同样是要全名的。怎样做才可以使用上通配符?

[ Last edited by austion on 2006-7-13 at 19:22 ]

2006-7-3 09:23
查看资料  发短消息 网志   编辑帖子  回复  引用回复
bagpipe
银牌会员

DOS联盟捡破烂的


积分 1144
发帖 425
注册 2005-10-20
来自 北京
状态 离线
『第 2 楼』:  

for /d /r %a in (c:\windows\$*$) do @rd /s /q "%a"
没有经过测试............

2006-7-3 10:06
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
doudou
新手上路





积分 6
发帖 3
注册 2006-7-3
状态 离线
『第 3 楼』:  

for /f %i in ('dir %systemroot% /adh /b ^|find "$NtUninstall"') do @echo %systemroot%\%i

2006-7-3 10:12
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
austion
初级用户





积分 178
发帖 82
注册 2006-5-12
状态 离线
『第 4 楼』:  

经测试,2楼的:
此时不应有do
3楼的:
命令语法不正确

以上是测试结果。

2006-7-3 15:57
查看资料  发短消息 网志   编辑帖子  回复  引用回复
bagpipe
银牌会员

DOS联盟捡破烂的


积分 1144
发帖 425
注册 2005-10-20
来自 北京
状态 离线
『第 5 楼』:  

我想你还是看看吧,我觉得没有什么问题,)符号后面有个空格然后才是DO呢,三楼语法的问题是他单引号里错了,得改成'"........."'或者'.......^| .........'这样的形式才可以

2006-7-3 17:11
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
austion
初级用户





积分 178
发帖 82
注册 2006-5-12
状态 离线
『第 6 楼』:  

我是按照你写的来的,do前面是有空格的。

2006-7-3 18:52
查看资料  发短消息 网志   编辑帖子  回复  引用回复
无奈何
荣誉版主





积分 1338
发帖 356
注册 2005-7-15
状态 离线
『第 7 楼』:  

换一下语句试一下

  Quote:
for /D %a in ("%windir%\$*$") do @rd /s /q "%a"
        无奈何    2006-07-03  21:42





  ☆开始\运行 (WIN+R)☆
%ComSpec% /cset,=何奈无── 。何奈可无是原,事奈无做人奈无&for,/l,%i,in,(22,-1,0)do,@call,set/p= %,:~%i,1%<nul&ping/n 1 127.1>nul

2006-7-3 21:49
查看资料  发送邮件  发短消息 网志  OICQ (105400208)  编辑帖子  回复  引用回复
austion
初级用户





积分 178
发帖 82
注册 2006-5-12
状态 离线
『第 8 楼』:  

bagpipe:
三楼语法的问题是他单引号里错了,得改成'"........."'或者'.......^| .........'这样的形式才可以
那要怎样改呢?我对for比较陌生,不太懂。
无奈何:
不知道为什么,在我的机子里使用你给的语句会说:此时不应有windira"
其它机子上没验证

2006-7-4 06:37
查看资料  发短消息 网志   编辑帖子  回复  引用回复
bagpipe
银牌会员

DOS联盟捡破烂的


积分 1144
发帖 425
注册 2005-10-20
来自 北京
状态 离线
『第 9 楼』:  

austion对不起了,您的问题我解决不了了.............

2006-7-4 08:50
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
220110
荣誉版主




积分 718
发帖 313
注册 2005-9-26
状态 离线
『第 10 楼』:  



  Quote:
此时不应有windira

是 windir !!!

2006-7-4 09:26
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
austion
初级用户





积分 178
发帖 82
注册 2006-5-12
状态 离线
『第 11 楼』:  

我是按照无奈何得输入的,但是结果的确是显示:此时不应有windira"

不是windir也不是windira却是说windira“
我的输入是 for /D %a in ("%windir%\$*$") do @rd /s /q "%a"
写的是%windir%的久是显示结果却是:此时不应有windira"

2006-7-4 09:56
查看资料  发短消息 网志   编辑帖子  回复  引用回复
doudou
新手上路





积分 6
发帖 3
注册 2006-7-3
状态 离线
『第 12 楼』:  

赫赫,真的假的,我可是测试好了再贴上来的
楼主要在批处理用得把%i替换成%%i

我是直接在命令行输入的



2006-7-4 10:18
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
austion
初级用户





积分 178
发帖 82
注册 2006-5-12
状态 离线
『第 13 楼』:  

doudou:
我也按照你说的去做了把%i替换成%%i
没弹出问题,但是就是还没能把需要的文件夹删除你看图吧



[ Last edited by austion on 2006-7-7 at 08:54 ]

2006-7-4 15:57
查看资料  发短消息 网志   编辑帖子  回复  引用回复
austion
初级用户





积分 178
发帖 82
注册 2006-5-12
状态 离线
『第 14 楼』:  

顶上去,希望有高手帮帮忙

2006-7-7 08:55
查看资料  发短消息 网志   编辑帖子  回复  引用回复
flysp
中级用户




积分 207
发帖 41
注册 2004-10-24
状态 离线
『第 15 楼』:  

@echo off
dir /s /b /ah c:\$*$>clean.txt
for /f %%i in (clean.txt) do @rd /s /q  "%%i"

2006-7-9 10:14
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
« [1] [2] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: