中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » (求助)关于批处理搜索文件的请教,谢谢!
作者:
标题: (求助)关于批处理搜索文件的请教,谢谢! 上一主题 | 下一主题
liuwushu
初级用户





积分 93
发帖 35
注册 2006-12-20
状态 离线
『楼 主』:  (求助)关于批处理搜索文件的请教,谢谢!

如何用批处理写在搜索指定文件后,打开文件所在的文件夹。

........输入要搜索的文件名:
.......正在搜索中请稍等......
打开文件所在的文件夹

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





积分 148
发帖 69
注册 2006-11-23
状态 离线
『第 2 楼』:  

试试这个吧:
注意文件比较多的话估计会让你机器够呛的!!

for /r %%i in (*.bat) do start %cd:~0,2%%%~pi

2006-12-21 23:49
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
liuwushu
初级用户





积分 93
发帖 35
注册 2006-12-20
状态 离线
『第 3 楼』:  

有没有有更好点的方法!

2006-12-22 05:46
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
wydos
中级用户





积分 304
发帖 117
注册 2006-4-4
状态 离线
『第 4 楼』:  

可以先用tree做各分区的目录数,保存到莫个指定文本,然后在文本中搜索文件

2006-12-22 06:17
查看资料  发送邮件  发短消息 网志  OICQ (327337973)  编辑帖子  回复  引用回复
tianzizhi
高级用户




积分 622
发帖 214
注册 2006-9-22
状态 离线
『第 5 楼』:  

@echo off
set /p a=请输入要搜索文件(要加扩展名):
echo 正在搜索中,请稍等.........
for %%i in (c d e f g h) do @(
for /f %%j in ('dir %%i:\%a% /s/a/b') do  start  %%~pj
)

2006-12-22 06:18
查看资料  发送邮件  发短消息 网志  OICQ (419503077)  编辑帖子  回复  引用回复
ccwan
金牌会员




积分 2725
发帖 1160
注册 2006-9-23
来自 河北廊坊
状态 离线
『第 6 楼』:  

请问你要查找的文件到处都有还是只有一个?
若是具有唯一性,下面的代码应该可以(抄自lxmxn):
@echo off
set/p input=请输入要查询的文件名
    for %%i in (c d e f) do (
        for /f "delims=" %%a in ('dir /s/b/a-d %%i:\%input% 2^>nul') do (
              start %%~dpsa&&goto :eof
        )
    )




三人行,必有吾师焉。   学然后知不足,教然后知困,然后能自强也。
2006-12-22 06:26
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
liuwushu
初级用户





积分 93
发帖 35
注册 2006-12-20
状态 离线
『第 7 楼』:  

谢谢tianzizhi,还有个问题,用你的方法,
不能实现全盘搜索,只能把bat放到那个盘符就搜索那个盘的文件。
不会打开C:\Program Files文件夹,只会打开C盘。

2006-12-22 06:50
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ccwan
金牌会员




积分 2725
发帖 1160
注册 2006-9-23
来自 河北廊坊
状态 离线
『第 8 楼』:  

~~~>_<~~~
试试我的......



三人行,必有吾师焉。   学然后知不足,教然后知困,然后能自强也。
2006-12-22 06:54
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
liuwushu
初级用户





积分 93
发帖 35
注册 2006-12-20
状态 离线
『第 9 楼』:  

ccwan的方法也不行,你不相信把BAT放到桌面,看看能不能找到D盘文件!

2006-12-22 06:54
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ccwan
金牌会员




积分 2725
发帖 1160
注册 2006-9-23
来自 河北廊坊
状态 离线
『第 10 楼』:  

我试过好多次了,可以啊!
你找什么文件打不开d:?



三人行,必有吾师焉。   学然后知不足,教然后知困,然后能自强也。
2006-12-22 06:56
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ccwan
金牌会员




积分 2725
发帖 1160
注册 2006-9-23
来自 河北廊坊
状态 离线
『第 11 楼』:  

其实这个批处理还可以改动一下,比如你要找1.txt,但是机子里有3~5个,那就把代码中  &&goto :eof  去掉,有几个1.txt打开几个文件夹,若你不嫌烦人的话.^_^



三人行,必有吾师焉。   学然后知不足,教然后知困,然后能自强也。
2006-12-22 07:11
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
tao0610
高级用户

朦胧的世界


积分 579
发帖 218
注册 2006-10-24
状态 离线
『第 12 楼』:  

对ccwan的修改一下,支持有空格的文件名.
@echo off
set/p input=请输入要查询的文件名:
    for %%i in (c d e f) do (
        for /f "usebackq delims=" %%a in (`dir/s/b/a-d "%%i:\%input%" 2^>nul`) do (
              start %%~dpsa
        )
    )





认识自己,降伏自己,改变自己
,才能改变别人!
2006-12-22 07:26
查看资料  发短消息 网志   编辑帖子  回复  引用回复
liuwushu
初级用户





积分 93
发帖 35
注册 2006-12-20
状态 离线
『第 13 楼』:  

谢谢tao0610,这个是我要的,又学习了。

2006-12-22 08:38
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
vkill
金牌会员





积分 4103
发帖 1744
注册 2006-1-20
来自 甘肃.临泽
状态 离线
『第 14 楼』:  

怎么start 都不加空格那?

2006-12-22 09:00
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: