中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » DOS批处理高手入选小考题(张榜),谁来揭榜?
作者:
标题: DOS批处理高手入选小考题(张榜),谁来揭榜? 上一主题 | 下一主题
GOTOmsdos
铂金会员

C++启程者


积分 5154
发帖 1827
注册 2003-7-18
状态 离线
『楼 主』:  DOS批处理高手入选小考题(张榜),谁来揭榜?

假设你有很多重复的目录,在c,d两个盘中,但你又不知道他们在哪里, 怎样用一句批处理删掉d盘中的重复目录(假设属性都是可删的)要求:只用一句

[此贴子已经被作者于2004-11-10 13:26:44编辑过]



2004-11-9 00:00
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
qzwqzw
银牌会员

天的白色影子


积分 2343
发帖 636
注册 2004-3-6
状态 离线
『第 2 楼』:  

难了点吧,在98下根本没有什么好办法,更别说一句dos命令。从网上下载专用软件把。


2004-11-11 00:00
查看资料  发短消息  网志   编辑帖子  回复  引用回复
Climbing
铂金会员

网络独行侠


积分 6962
发帖 2753
注册 2003-4-16
来自 河北保定
状态 离线
『第 3 楼』:  

这个问题已经在前面的帖子中解决了。看下面的示例:@echo off :: testfor.bat 测试for命令及命令扩展 :: 功能:删除2目录下所有与1目录中重名的子目录 rd /s /q 1 rd /s /q 2 md 1\a md 1\a.1 md 1\b md 1\c md 2\a md 2\a.1 md 2\a.2 md 2\b md 2\c md 2\d md 2\e echo ================================================================ echo 目录 1 的内容: echo ================================================================ dir /b 1 echo ================================================================ echo 目录 2 的内容: echo ================================================================ dir /b 2 echo ================================================================ echo 运行第一个for命令之后(if %%~ni==%%~nj),目录2的内容变为: for /d /r 1 %%i in (*) do for /d /r 2 %%j in (*) do if %%~ni==%%~nj rd /s /q %%j echo ================================================================ dir /b 2 echo ================================================================ echo 注意:a.2目录被错误的删除了。 pause echo. echo ================================================================ echo 准备运行第二个for命令... echo ================================================================ rd /s /q 1 rd /s /q 2 md 1\a md 1\a.1 md 1\b md 1\c md 2\a md 2\a.1 md 2\a.2 md 2\b md 2\c md 2\d md 2\e echo 目录 1 的内容: echo ================================================================ dir /b 1 echo ================================================================ echo 目录 2 的内容: echo ================================================================ dir /b 2 echo ================================================================ echo 运行第二个for命令之后(if %%~nxi==%%~nxj),目录2的内容变为: for /d /r 1 %%i in (*) do for /d /r 2 %%j in (*) do if %%~nxi==%%~nxj rd /s /q %%j echo ================================================================ dir /b 2 echo ================================================================ echo 看,a.2目录没有被删除。 echo. echo ================================================================ echo 测试结果:目录名同样是有扩展名的。




偶只喜欢回答那些标题和描述都很清晰的帖子! 如想解决问题,请认真学习“这个帖子”和“这个帖子”并努力遵守,如果可能,请告诉更多的人!
2004-11-12 00:00
查看资料  发送邮件  访问主页  发短消息  网志  OICQ (653668)  编辑帖子  回复  引用回复

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


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



论坛跳转: