中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 帮忙改下批处理.. 谢谢! 上一主题 | 下一主题
ixxxxyou
初级用户





积分 141
发帖 63
注册 2008-5-6
状态 离线
『楼 主』:  帮忙改下批处理.. 谢谢!

已解决!!   谢谢各位了!!

[ Last edited by ixxxxyou on 2008-5-19 at 11:24 PM ]

   此帖被 -8 点积分     点击查看详情   
评分人:【 HAT 分数: -8  时间:2008-11-9 01:42


2008-5-7 01:39
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ixxxxyou
初级用户





积分 141
发帖 63
注册 2008-5-6
状态 离线
『第 2 楼』:  

这个没人会吗??

2008-5-8 00:16
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
pusofalse
银牌会员




积分 1604
发帖 646
注册 2008-4-13
状态 离线
『第 3 楼』:  

for %%a in (c d e f g h i j k) do (
  if exist %%a:\ (
  dir %%a:\ /ad /b /s |findstr /i "found ntuninstall ntservicepackuninstall"
)
)
pause
rem 你的代码我没看,只是根据你的意思来写的。。。。

是不是还要过滤掉移动驱动器?

2008-5-8 00:23
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
zqz0012005
中级用户




积分 297
发帖 135
注册 2006-10-21
状态 离线
『第 4 楼』:  

dir可以指定多个参数,比如
dir /a/s/b C:\FOUND.* C:\$NtUninstall*$ C:\$NtServicePackUninstall*$

2008-5-8 03:57
查看资料  发短消息 网志  OICQ (411976538)  编辑帖子  回复  引用回复
ixxxxyou
初级用户





积分 141
发帖 63
注册 2008-5-6
状态 离线
『第 5 楼』:  



  Quote:
Originally posted by zqz0012005 at 2008-5-8 03:57 AM:
dir可以指定多个参数,比如
dir /a/s/b C:\FOUND.* C:\$NtUninstall*$ C:\$NtServicePackUninstall*$

那是不是改为..


    fsutil fsinfo drivetype !drive!|find "固定">nul && for /f "delims=" %%a in ('dir /s/ad/b C:\FOUND.* C:\$NtUninstall*$ C:\$NtServicePackUninstall*$') do rd /s /q "%%a"
)


这样对吗?

2008-5-8 14:25
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ixxxxyou
初级用户





积分 141
发帖 63
注册 2008-5-6
状态 离线
『第 6 楼』:  

但 这样改的话不就是只能查C盘了吗?

2008-5-8 14:26
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ixxxxyou
初级用户





积分 141
发帖 63
注册 2008-5-6
状态 离线
『第 7 楼』:  

但是改成这样也不行啊..

@echo off & setlocal enabledelayedexpansion
for /f "delims=\" %%i in ('fsutil fsinfo drives^|find /v ""') do (
    set var=%%i
    set drive=!var:~-2!
    fsutil fsinfo drivetype !drive!|find "固定">nul && for /f "delims=" %%a in ('dir /s/ad/b "!drive!\FOUND.* $NtUninstall*$ $NtServicePackUninstall*$"') do rd /s /q "%%a"
)


提示找不到文件

2008-5-8 14:32
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
zqz0012005
中级用户




积分 297
发帖 135
注册 2006-10-21
状态 离线
『第 8 楼』:  

dir /s/ad/b "!drive!\FOUND.*" "!drive!\$NtUninstall*$" "!drive!\$NtServicePackUninstall*$"
这里的!drive!也不能丢了

引号是不能乱加的,要明白它的作用

搞得我都晕了

[ Last edited by zqz0012005 on 2008-5-8 at 11:25 PM ]

2008-5-8 16:38
查看资料  发短消息 网志  OICQ (411976538)  编辑帖子  回复  引用回复
huahua0919
银牌会员




积分 1608
发帖 780
注册 2007-10-7
状态 离线
『第 9 楼』:  


@echo off
for %%a in (c d e ) do (
if /i "%%a:"=="%systemdrive%" (cd %%a:\) else (%%a:)
dir/s/b/a FOUND.*
)
pause
要找出全部的固定驱动器更简单,不用那么复杂的
wmic logicaldisk where drivetype=3 list brief


2008-5-8 17:04
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
ixxxxyou
初级用户





积分 141
发帖 63
注册 2008-5-6
状态 离线
『第 10 楼』:  



  Quote:
Originally posted by zqz0012005 at 2008-5-8 04:38 PM:
dir /s/ad/b "!drive!\FOUND.* !drive!\$NtUninstall*$ !drive!\$NtServicePackUninstall*$"
这里的!drive!也不能丢了

改行这样后提示 : 文件名、目录名或卷标语法不正确。

@echo off & setlocal enabledelayedexpansion
for /f "delims=\" %%i in ('fsutil fsinfo drives^|find /v ""') do (
    set var=%%i
    set drive=!var:~-2!
    fsutil fsinfo drivetype !drive!|find "固定">nul && for /f "delims=" %%a in ('dir /s/ad/b "!drive!\FOUND.* !drive!\$NtUninstall*$ !drive!\$NtServicePackUninstall*$"') do rd /s /q "%%a"
)

2008-5-8 17:40
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
zqz0012005
中级用户




积分 297
发帖 135
注册 2006-10-21
状态 离线
『第 11 楼』:  

再把4楼和8楼看清楚,动手之前多思考

2008-5-8 23:26
查看资料  发短消息 网志  OICQ (411976538)  编辑帖子  回复  引用回复
ixxxxyou
初级用户





积分 141
发帖 63
注册 2008-5-6
状态 离线
『第 12 楼』:  

终于搞明白了!!!   万分感谢楼上的大哥!!  谢谢了!

2008-5-9 00:22
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


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



论坛跳转: