Board logo

标题: [文件操作] 批处理怎么样把一个目录下所有子目录里的文件复制到当前目录 [打印本页]

作者: xymc    时间: 2015-9-25 16:59     标题: 批处理怎么样把一个目录下所有子目录里的文件复制到当前目录

本帖最后由 xymc 于 2015-9-25 17:43 编辑

如D盘123里面有很多子目录,子目录里面还有文件,
批处理把D盘123里面所有子目录下的文件复制到当前目录(D盘123里面)

@echo off
set son=%cd%
pushd %son%
cd ..
set parent=%cd%
popd
for /d %%i in (*) do (
xcopy /y %son%\%%i\*.* %son%
)
pause

这个可以,但只能复制一层子目录的文件,如果子目录下还有一层就复制不出来了 (如D:\123\1\2,123下的1里面的文件可以复制出来.2文件夹里面的就不行了)
怎么修改下

@echo off
for /r %%i in (*.*) do (
xcopy /h /y "%%i" %cd%
)

这样也可以,我自己百度找到了
作者: flyinnet9    时间: 2015-9-25 17:39

  1. @echo off
  2. cd /d d:\123
  3. for /f "delims=" %%a in ('dir /s /b /a-d') do copy "%%a"
复制代码

作者: 34205    时间: 2015-9-27 10:22

楼上已经有Bat了,
来个不正常的:
1、在Windows7以上系统打开到123文件夹,在搜索框里面输入英文点号
2、选中所有结果,移动到你需要的文件夹
哈哈....
作者: 尘丶    时间: 2015-9-27 10:49

xcopy /?有,加个xcopy /s




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2