Board logo

标题: [文件操作] BAT批处理如何复制不同目录下相同文件到新目录? [打印本页]

作者: gannh    时间: 2014-3-14 11:29     标题: BAT批处理如何复制不同目录下相同文件到新目录?

现在有N个目录,各目录下都有M个相同文件名的文件,现要将所有目录下的X个文件分别提取到新的不同目录下,请问如何实现呢,谢谢!
作者: DAIC    时间: 2014-3-14 11:32

  1. @echo off
  2. for /r "C:\test\" %%i in (*.*) do (
  3.     copy /y "%%i" "D:\test\"
  4. )
复制代码

作者: gannh    时间: 2014-3-14 11:39

请教DAIC,刚才试了一下代码,只能复制一个目录下的X个文件到新目录,而不是N个目录下的X个文件到新的不同目录,这是什么回事呢,谢谢指教
作者: gannh    时间: 2014-3-14 11:48

可能是我表达不清,现将目录结构附上
E:\F
├─b---1
     ---2
     ---3
     ---4
     ---5
     ---6
     ---7

└─a---1
     ---2
     ---3
     ---4
     ---5
     ---6
     ---7
现在是要将a,b目录下的2这个文件(内容不同),分别提取到新的目录下,不知道可否实现?
作者: DAIC    时间: 2014-3-14 12:44

  1. @echo off
  2. for /r "E:\a\" %%i in (*.*) do (
  3.     copy /y "%%i" "D:\test\"
  4. )
  5. for /r "E:\b\" %%i in (*.*) do (
  6.     copy /y "%%i" "D:\test\"
  7. )
复制代码

作者: gannh    时间: 2014-3-14 14:09

再请教DAIC,刚才试了一下代码,还是达不到想要的效果

现在e盘目录下有F文件夹,文件下有1和2两个文件夹,两个文件夹下有文件名相同,但内容不同的文件(实际情况可能是N个目录,N个文件,现在只是将目录简化表达)
e:\F
├─1
│      1.txt
│      2.txt
│      3.txt
│      4.txt
│      
└─2
        1.txt
        2.txt
        3.txt
        4.txt
现在要想实现,将文件夹下的1.txt文件复制到d盘d文件夹下,如图
        

d:\D
├─1
│      1.txt
│      
└─2
        1.txt
作者: zhanglei1371    时间: 2014-3-14 14:29

本帖最后由 zhanglei1371 于 2014-3-14 14:38 编辑

是这个意思吧:
  1. xcopy /s/e/k/h/y c:\12\*.txt e:\12
复制代码

作者: DAIC    时间: 2014-3-14 21:02

回复 6# gannh


    2.txt不需要复制是吗?
作者: gannh    时间: 2014-3-16 10:25

谢谢各位的指点,我已经用同步软件的排除功能实现了,谢谢




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