中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 一个寻找文件问题!休假最后一天,希望大家帮帮我。
作者:
标题: 一个寻找文件问题!休假最后一天,希望大家帮帮我。 上一主题 | 下一主题
zqdarkday
中级用户




积分 210
发帖 79
注册 2007-4-14
来自 湖北
状态 离线
『楼 主』:  一个寻找文件问题!休假最后一天,希望大家帮帮我。

我有一个问题
我有一个文件a.bat不知道在哪里
我想有编个代码来判断寻找这个文件a.bat
然后把它copy到其它盘中
请问改怎么做?
谢谢大家告诉。

[ Last edited by zqdarkday on 2007-5-6 at 10:58 PM ]

2007-5-6 21:36
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
qasa
高级用户




积分 959
发帖 311
注册 2006-4-11
来自 广东-LianJiang
状态 离线
『第 2 楼』:  


要是用批处理来找文件,效率不理想。
出于学习可以试下代码:
这个是在D盘中寻找a.bat,找到a.bat,就复制到当前目录,并中止寻找。
    for /R d: %%i in (a.bat) do (
     if exist %%i copy %%i .&&goto :eof
     )




κχυμγνξοθπρωψιαδλεηφβτζσ┬╀┾┳┞┯┰┱┣┲┳╂╁│├┟┭┠这是什么??这就是我的人生
2007-5-6 23:02
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
zqdarkday
中级用户




积分 210
发帖 79
注册 2007-4-14
来自 湖北
状态 离线
『第 3 楼』:  

a.bat不一定在根目录下的
那再用什么办法呢?

2007-5-6 23:25
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
qasa
高级用户




积分 959
发帖 311
注册 2006-4-11
来自 广东-LianJiang
状态 离线
『第 4 楼』:  


我这段代码是搜索整个D盘的内容,如果a.bat在D盘的某个目录内都可以找得到的。




κχυμγνξοθπρωψιαδλεηφβτζσ┬╀┾┳┞┯┰┱┣┲┳╂╁│├┟┭┠这是什么??这就是我的人生
2007-5-6 23:29
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lxmxn
版主




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

2楼的代码貌似不行。

To zqdarkday:

红色部分为你的盘符列表;
蓝色部分为你复制的目标目录;
请根据情况自行修改。

  Quote:
@echo off
for %%a in (c d e f) do (
    for /f "delims=" %%b in ('dir /s/b/a-d %%a:\a.bat 2^>nul') do (
        if exist "%%b" echo copy "%%b" D:\
    )
)
pause



2007-5-7 01:45
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
fengzi
中级用户

金牌会员


积分 315
发帖 152
注册 2007-1-25
状态 离线
『第 6 楼』:  

set zhao=a.bat

for %%a in (c d e) do for /f "tokens=*" %%i in ('dir /s/b/a-d %%a:\%zhao%')  do copy "%%i" 你要保存的位置``
我都试过了 不管你A。BAT在什么地方都可以的``

2007-5-7 02:02
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
youkkk
中级用户





积分 274
发帖 119
注册 2006-10-17
状态 离线
『第 7 楼』:  



  Quote:
Originally posted by lxmxn at 2007-5-7 01:45:
2楼的代码貌似不行。

To zqdarkday:

红色部分为你的盘符列表;
蓝色部分为你复制的目标目录;
请根据情况自行修改。


cmd上显示是在复印。可是到目标目录一看一个文件都没有。

2007-5-7 11:06
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
zqdarkday
中级用户




积分 210
发帖 79
注册 2007-4-14
来自 湖北
状态 离线
『第 8 楼』:  

谢谢2,4,5楼的高手,其实2楼只是教我一个方法,这个我知道。
其实代码对不对无所谓,不过让我对for的认识又加深了。
再次谢谢大家。

2007-5-7 11:54
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lxmxn
版主




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



  Quote:
Originally posted by youkkk at 2007-5-7 11:06:
cmd上显示是在复印。可是到目标目录一看一个文件都没有。

去掉copy命令前面的“echo”就可以了。

2007-5-7 15:56
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: