中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [已结]for /d 全盘搜索指定文件夹
作者:
标题: [已结]for /d 全盘搜索指定文件夹 上一主题 | 下一主题
killkk
初级用户





积分 61
发帖 39
注册 2007-3-22
来自 come from hb--wh
状态 离线
『楼 主』:  [已结]for /d 全盘搜索指定文件夹


@echo off

for /d %%i in (c d e f g h i j k l m n o p q r s t u v w x y z) do @if exist %%i:\文件夹 @copy /y *.txt %%i:\文件夹 >nul 2>nul &&if exist %%i:\文件夹\*.txt (@echo 成功~
                          ) else (
                           @echo 失败~
                          )

pause
大家好,小弟本意是想全盘搜索指定文件夹,找到后就把指定的文件拷进去,然后检查拷的文件,检测到了就输出成功;否则输入失败!

经测试可以达到要求;,但是问题是假如我要拷贝的文件不存在的话(我的想法就提示文件不存在!).就不会有提示成功或失败! 请高手指点一二``先谢过~~

───────────────── 版务记录 ─────────────────
执行:HAT
操作:[2008-11-10]在帖子标题中增加搜索关键字;代码加code标签
说明:原标题"[求助]for /d"不利于论坛搜索
处罚:扣除2点积分
提示:建议阅读以下帖子
{1415}提问的智慧
{7326}论坛新手必读,所有人的基本行为准则
{22703}请不要做浮躁的人
{32667}[愤怒]那些连标题都写不清楚的人们啊,你们醒醒吧
{32825}本版严厉整顿烂帖
───────────────── 版务记录 ─────────────────


[ Last edited by HAT on 2008-11-11 at 23:56 ]

   此帖被 -2 点积分    点击查看详情   
评分人:【 HAT 分数: -2  时间:2008-11-10 10:33


2008-11-10 00:06
查看资料  发送邮件  发短消息 网志  OICQ (75403481)  编辑帖子  回复  引用回复
tireless
银牌会员





积分 2025
发帖 1122
注册 2007-9-5
状态 离线
『第 2 楼』:  

那个代码只能搜索根目录下的文件夹吧?

2008-11-10 00:39
查看资料  发短消息 网志   编辑帖子  回复  引用回复
tireless
银牌会员





积分 2025
发帖 1122
注册 2007-9-5
状态 离线
『第 3 楼』:  


@echo off
for %%a in (c d e f g h i j k l m n o p q r s t u v w x y z) do (
  if exist %%a: (
    if exist "%%a:\文件夹" set folder=%%a:\文件夹& goto copyf
    for /f "delims=" %%b in ('dir /s /a:d /b "%%a:\文件夹" 2^>nul') do (
      set folder=%%b& goto copyf
    )
  )
)
echo 没有找到 "文件夹"。& goto end

:copyf
if not exist "*.txt" echo 文件不存在! & goto end
copy /y "*.txt" "%folder%" >nul 2>nul && echo 成功~ || echo 失败~

:end
echo. & echo 按任意键退出... & pause>nul & exit /b


   此帖被 +2 点积分    点击查看详情   
评分人:【 HAT 分数: +2  时间:2008-11-12 16:01


2008-11-10 02:01
查看资料  发短消息 网志   编辑帖子  回复  引用回复
killkk
初级用户





积分 61
发帖 39
注册 2007-3-22
来自 come from hb--wh
状态 离线
『第 4 楼』:  

恩,是只能搜索根目录的文件夹!  非常感谢你的提示他code``    (+`.`+)

2008-11-10 05:30
查看资料  发送邮件  发短消息 网志  OICQ (75403481)  编辑帖子  回复  引用回复
killkk
初级用户





积分 61
发帖 39
注册 2007-3-22
来自 come from hb--wh
状态 离线
『第 5 楼』:  

刚刚测试了一下, 不过不能成功`` ;  还是3Q , 我第一次发贴` : )

2008-11-10 05:52
查看资料  发送邮件  发短消息 网志  OICQ (75403481)  编辑帖子  回复  引用回复
tireless
银牌会员





积分 2025
发帖 1122
注册 2007-9-5
状态 离线
『第 6 楼』:  Re 5 楼

哪一步出错了?测试条件和测试方法?

2008-11-10 09:13
查看资料  发短消息 网志   编辑帖子  回复  引用回复
killkk
初级用户





积分 61
发帖 39
注册 2007-3-22
来自 come from hb--wh
状态 离线
『第 7 楼』:  

多谢批评指点.....

2008-11-11 20:24
查看资料  发送邮件  发短消息 网志  OICQ (75403481)  编辑帖子  回复  引用回复
tireless
银牌会员





积分 2025
发帖 1122
注册 2007-9-5
状态 离线
『第 8 楼』:  



  Quote:
Originally posted by killkk at 2008-11-10 05:52 AM:
刚刚测试了一下, 不过不能成功`` ;  还是3Q , 我第一次发贴` : )

提示 没有找到 "文件夹"。?
(PS,要把 for 里面的三个文件夹改为你要找的文件夹名称)

2008-11-11 20:43
查看资料  发短消息 网志   编辑帖子  回复  引用回复
shell
新手上路





积分 10
发帖 10
注册 2008-11-9
状态 离线
『第 9 楼』:  

LZ真的很郁闷,偶可以理解

2008-11-11 20:46
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
killkk
初级用户





积分 61
发帖 39
注册 2007-3-22
来自 come from hb--wh
状态 离线
『第 10 楼』:  



  Quote:
Originally posted by tireless at 2008-11-10 09:13 AM:
哪一步出错了?测试条件和测试方法?

已经达到要求!谢谢你的热情帮助``

2008-11-12 14:13
查看资料  发送邮件  发短消息 网志  OICQ (75403481)  编辑帖子  回复  引用回复

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


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



论坛跳转: