中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 求一bat,全盘查找指定文件,并且删除
作者:
标题: 求一bat,全盘查找指定文件,并且删除 上一主题 | 下一主题
ipretender
新手上路





积分 10
发帖 3
注册 2007-3-5
状态 离线
『楼 主』:  求一bat,全盘查找指定文件,并且删除

我是一个初学者有很多问题
求一bat,全盘查找指定文件,并且删除.
刚才发了一个帖子,没有写清楚.我是想写个bat文件,实现这样的功能:
假设我要删除一个c.sys文件,文件是隐藏\系统属性,我也不知道这个文件的位置,所以要搜索所有的盘,最好bat中,还能列出删除的这个文件的位置.

谢谢刚才回的朋友,谢谢大家了

2007-3-5 12:10
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
6622186
高级用户





积分 894
发帖 411
注册 2007-2-17
状态 离线
『第 2 楼』:  

del /ash /s filename



@set c=     不知则觉多,知则觉少,越知越多,便觉越来越少.        --- 知多少.
@for,/l,%%i,in,(1,1,55)do,@call,set/p=%%c:~%%i,1%%<nul&ping/n 1 127.1>nul


2007-3-5 12:55
查看资料  发短消息 网志   编辑帖子  回复  引用回复
zhoushijay
高级用户

Autowalk


积分 845
发帖 375
注册 2007-3-3
状态 离线
『第 3 楼』:  

echo off
for %%i in (c:,d:,e:,f:) do del /s /ar /as /ah /aa %%i\c.sys
pause

2007-3-5 13:09
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ipretender
新手上路





积分 10
发帖 3
注册 2007-3-5
状态 离线
『第 4 楼』:  



  Quote:
Originally posted by zhoushijay at 2007-3-5 12:09 AM:
echo off
for %%i in (c:,d:,e:,f:) do del /s /ar /as /ah /aa %%i\c.sys
pause

效果不好,只能查找各盘的根目录下,兄弟们有没有好方法

2007-3-6 09:12
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
PPdos
高级用户




积分 783
发帖 268
注册 2006-12-26
状态 离线
『第 5 楼』:  


@echo off
echo                           [A]查找文件选项              
title 批处理查杀病毒程序
set /p "a=输入可疑文件名称:"
echo.searching...
dir c:\ /s /b /a|find /I /N "%a%">list.txt
dir d:\ /s /b /a|find /I /N "%a%">>list.txt
:before
cls&echo                      [B]删除文件选项
type list.txt|more
set /p b="输入[]内编号:"
if %b% lss 10 (set w=3) else if %b% lss 100 (set w=4) else if %b% lss 1000 (set w=5) else if %b% lss 10000 (set w=6) else if %b% lss 100000 (set w=7) else if %b% lss 1000000 (set w=8) else if %b% lss 10000000 (set w=9)
findstr /C:"[%b%]" list.txt>del.txt
:: /O 匹配行前字符偏移量  /N 所在行编号
SETLOCAL ENABLEDELAYEDEXPANSION
set /p c=<del.txt
del /p "!c:~%w%!"
goto before
很早前写的 不知道能不能帮你 我只有俩个盘所以需要你自己修改



菩提本无树,明镜亦非台,本来无一物,何处惹尘埃.
2007-3-6 09:19
查看资料  发短消息 网志   编辑帖子  回复  引用回复
lxmxn
版主




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


for /f "skip=1" %a in ('wmic logicaldisk where "drivetype=3" get caption') do @del /s/a/f %a\c.sys
::命令行执行上面的命令,没有测试,有问题跟贴。


2007-3-6 09:37
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
zhoushijay
高级用户

Autowalk


积分 845
发帖 375
注册 2007-3-3
状态 离线
『第 7 楼』:  

这个还不是和我一样只能在各盘根目录中找^

2007-3-6 09:51
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 8 楼』:  

  Re zhoushijay:
  del的"/s"参数就可以实现在子目录中删除文件的,我这里测试是通过的,不知道你的为什么不行。请说明你的测试环境及系统版本。


2007-3-6 09:57
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
zhoushijay
高级用户

Autowalk


积分 845
发帖 375
注册 2007-3-3
状态 离线
『第 9 楼』:  

echo off
for %%i in (c:,d:,e:,f:) do del /s /f /q %%i\c.sys
pause

这样可以在子目录中查找啊

2007-3-6 10:14
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
minmin888
初级用户





积分 127
发帖 62
注册 2007-4-19
状态 离线
『第 10 楼』:  

学到东西! wmic命令强大!

2007-5-7 19:44
查看资料  发短消息 网志   编辑帖子  回复  引用回复
mzwind
初级用户





积分 34
发帖 13
注册 2007-4-30
状态 离线
『第 11 楼』:  

可不可以 综合一下两种方法,这个BAT文件有用呀,谢谢

2007-5-7 21:10
查看资料  发短消息 网志   编辑帖子  回复  引用回复
yywd
中级用户





积分 358
发帖 130
注册 2005-11-12
状态 离线
『第 12 楼』:  

for %%i in (c:,d:,e:,f:) do del /s /f /q %%i\c.sys
强!

2007-5-8 16:41
查看资料  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: