中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS疑难解答 & 问题讨论 (解答室) » 请问要怎样去掉一个相同目录?
作者:
标题: 请问要怎样去掉一个相同目录? 上一主题 | 下一主题
ultralqxq
初级用户




积分 165
发帖 27
注册 2004-11-11
状态 离线
『楼 主』:  请问要怎样去掉一个相同目录?

如:
D:\ABC\ABC\1.txt    改成   D:\ABC\1.txt
D:\XYZ\XYZ\2.txt    改成    D:\XYZ\2.txt
由于我大批的一次性解压缩,结果解压出几百个这样的情况。如果一个一个去改会死人的!!

2004-12-25 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Michael
钻石会员





积分 10046
发帖 3039
注册 2002-11-11
状态 离线
『第 2 楼』:  

用move命令move *.* ..



简单就是美
2004-12-25 00:00
查看资料  发短消息 网志   编辑帖子  回复  引用回复
ultralqxq
初级用户




积分 165
发帖 27
注册 2004-11-11
状态 离线
『第 3 楼』:  

不行的,如果运行move *.* ..只会把当前目录所有的文件踢到“上级目录”去了而已。对所有的文件夹都保持不变。而在我的情况下,当前目录就是d:\,新建一个bat文件,内容为move *.* ..运行后的结果就是把它自己给踢到D:\下了。呵呵。。

2004-12-25 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Michael
钻石会员





积分 10046
发帖 3039
注册 2002-11-11
状态 离线
『第 4 楼』:  

用xcopy /s/e/h吧然后用ren命令给新目录改名,一下就 OK了.



简单就是美
2004-12-26 00:00
查看资料  发短消息 网志   编辑帖子  回复  引用回复
ultralqxq
初级用户




积分 165
发帖 27
注册 2004-11-11
状态 离线
『第 5 楼』:  

是我主楼没说清楚吗?我的意思是说我想把解压出来的几百个文件夹都去掉一个相同的目录,而你们的方法都是针对一个文件夹来操作,如果是单个文件夹我还进DOS干嘛。直接剪切、粘帖一下不就好啦!

2004-12-26 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ultralqxq
初级用户




积分 165
发帖 27
注册 2004-11-11
状态 离线
『第 6 楼』:  

我自己的方法是1。先dir /b >>d:\1.txt将所有的文件夹名称写到1.txt里,2。再新建一个movefolder.bat文件,内容为:d:
cd %1
move /y %1 d:\23。将1.txt里的文件夹名称当参数一个一个传递给movefolder.bat,但是我不知道要怎么写。。

2004-12-26 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
wolfkin
初级用户




积分 148
发帖 18
注册 2004-11-30
状态 离线
『第 7 楼』:  

简单的办法用搜索就你的这个例子你可以在d盘下搜索 内容不用填这样就能找出d盘下所有的文件夹和文件你会看到这样的格式名称                       所在文件夹abc                      d:\abc                      d:\abcxyz                       d:\xyz                       d:\xyz......                    .........之后你只要选中所在路径为d:\abc 的那一行选择剪切之后在d盘下粘帖就可以了

2004-12-26 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ultralqxq
初级用户




积分 165
发帖 27
注册 2004-11-11
状态 离线
『第 8 楼』:  

我只是举个例子才这么简单的。事实上哪是xyz abc这么简单的东西啊!我是下载了一个网站里的所有教程,然后全部解压后(选“解压到这里”)变成这种情况,有的压缩包解压后是多级目录的。所以。。。。

2004-12-27 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ultralqxq
初级用户




积分 165
发帖 27
注册 2004-11-11
状态 离线
『第 9 楼』:  

其实我现在心中已经有解决的办法了。不过是用vbs加BAT做到的。

2004-12-27 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
willsort
元老会员

Batchinger


积分 4432
发帖 1512
注册 2002-10-18
状态 离线
『第 10 楼』:  

Re ultralqxq:    看来ultraqxq兄也是批处理的行家,只是对此复用几率很低而实现起来又很复杂的操作,批处理不是一个适当的选择。不过,楼主的既然选择“解压到这里”,怎么可能出现同名二级目录,除非压缩包本就是同名二级目录,如果这样就需要在“高级”选项里选择不释放路径了;如果选择解压到各个单独的文件夹,到很可能出现这种情况,解决起来很简单,删除后重新依照正确方式解压即可。



※ Batchinger 致 Bat Fans:请访问 [讨论]批处理编程的异类 ,欢迎交流与共享批处理编程心得!
2004-12-27 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ultralqxq
初级用户




积分 165
发帖 27
注册 2004-11-11
状态 离线
『第 11 楼』:  

to willsort恩,我刚才测试了一下,确实象你说的,我误选了“解压到各个单独的文件夹”,汗。真是粗心。不过源压缩包已经被我删掉了。呵呵。真是佩服你,细心到这种程度。我以为自己选的是“解压到这里”,从没注意过当选中多个压缩包解压时会多出一项“解压到各个单独的文件夹”。谢谢你的回答。问题解决了,并且多学到了一点知识。忠心感谢楼上的几位朋友。

2004-12-29 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
chenhui530
高级用户





积分 772
发帖 273
注册 2004-10-23
状态 离线
『第 12 楼』:  

你试下下面的命令行吗我没有测试过因为是在外面出车!!保存为批处理文件放在你需要解压的文件同目录需要注意的是要先执行一次批处理再解压文件再执行一次即可完成操作!!
if exist type.txt goto next
for %%a in (*.*) do dir /a /b %%a~na>type.txt
goto end:next
for /f "usebackq" %%b in (type.txt) do move %%b\%%b\*.* %%b && rd %%b\%%b:end



http://www.msfans.net/bbs/
2004-12-29 00:00
查看资料  发送邮件  发短消息 网志  OICQ (77740821)  编辑帖子  回复  引用回复

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


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



论坛跳转: