中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 文件夹下面的所有子文件夹里的文件复制到新的文件夹下
作者:
标题: 文件夹下面的所有子文件夹里的文件复制到新的文件夹下 上一主题 | 下一主题
mfdcxnf
初级用户





积分 155
发帖 74
注册 2007-2-21
状态 离线
『楼 主』:  文件夹下面的所有子文件夹里的文件复制到新的文件夹下

如何用批处理实现将一个文件夹下面的所有子文件夹下面的文件复制到一个新的文件夹下面!

2008-3-9 15:34
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
suntb
高级用户





积分 581
发帖 277
注册 2006-12-23
状态 离线
『第 2 楼』:  

xcopy *.*  新文件夹 /e

2008-3-9 18:41
查看资料  发短消息 网志   编辑帖子  回复  引用回复
mfdcxnf
初级用户





积分 155
发帖 74
注册 2007-2-21
状态 离线
『第 3 楼』:  

首先谢谢你,不过你理解错误了,你这样的话,文件夹也一起复制了,我要的只是文件,文件夹不要。

2008-3-10 19:07
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
plp626
银牌会员

钻石会员


积分 2278
发帖 1020
注册 2007-11-19
状态 离线
『第 4 楼』:  

http://www.cn-dos.net/forum/view ... =%E6%8F%90%E5%8F%96



山外有山,人外有人;低调做人,努力做事。

进入网盘(各种工具)~~ 空间~~cmd学习
2008-3-10 19:22
查看资料  发短消息 网志   编辑帖子  回复  引用回复
huahua0919
银牌会员




积分 1608
发帖 780
注册 2007-10-7
状态 离线
『第 5 楼』:  


@echo off
md hehe
for /f "delims=" %%i in ('dir /s/b e:\办公学习\*.*') do (
copy %%i hehe
)
但是怕你不同文件夹下面有重名的文件!
以上代码没有考虑出现这种事情的可能性!

2008-3-10 19:24
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
abcd
银牌会员





积分 1436
发帖 739
注册 2007-10-11
状态 离线
『第 6 楼』:  


@echo off
set source=a
set destination=b
for /r "%source%\" %%i in (*) do (
  xcopy "%%i" "%destination%\" /y/i
)
pause


2008-3-10 19:39
查看资料  发短消息 网志  OICQ (470237592)  编辑帖子  回复  引用回复
plp626
银牌会员

钻石会员


积分 2278
发帖 1020
注册 2007-11-19
状态 离线
『第 7 楼』:  

新人和我们一样懒

这是那个链接网页的内容,不会把同名文件覆盖:

  Quote:
将D:\music1\ D:\music2\ D:\music3\目录的*.mp3文件要移动到U盘(G:\music)下:(若是拷贝将move直接换为copy)
CODE:  [Copy to clipboard]
--------------------------------------------------------------------------------

@echo off&setlocal enabledelayedexpansion
set "file=music1\*.mp3 music2\*.mp3 music3\*.mp3"
set "drive=D:\"
set "U=G:\music\"
for /r "%drive%" %%a in (%file%) do (
   if exist "!U!%%~nxa" call :re "%%~na" "%%~xa"
   move "%%a" "!U!%%~na!n!%%~xa"
)
goto :eof
:re
set "n=1"
:loop
if exist "!U!%~1_%n%%~2" set/a n+=1&goto loop
set "n=_%n%"&goto :eof
将D:盘内的所有(包括子目录内的)mp3文件copy到...
CODE:  [Copy to clipboard]
--------------------------------------------------------------------------------

@echo off&setlocal enabledelayedexpansion
set "file=*.mp3"
set "drive=D:\"
set "U=G:\music\"
for /r "%drive%" %%a in (%file%) do (
   if exist "!U!%%~nxa" call :re "%%~na" "%%~xa"
   move "%%a" "!U!%%~na!n!%%~xa"
)
goto :eof
:re
set "n=1"
:loop
if exist "!U!%~1_%n%%~2" set/a n+=1&goto loop
set "n=_%n%"&goto :eof
未测试.
若有疑问请到下面的帖子跟帖:

http://www.cn-dos.net/forum/view ... ge=1&highlight=





山外有山,人外有人;低调做人,努力做事。

进入网盘(各种工具)~~ 空间~~cmd学习
2008-3-10 20:36
查看资料  发短消息 网志   编辑帖子  回复  引用回复
mfdcxnf
初级用户





积分 155
发帖 74
注册 2007-2-21
状态 离线
『第 8 楼』:  

谢谢各位,学习了,其实也不是我懒,主要是我搜了好多次也没有找到。再次说声谢谢!

2008-3-10 20:59
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: