【问题标题】:Copy only newest folder via batch file通过批处理文件仅复制最新的文件夹
【发布时间】:2011-09-22 08:22:51
【问题描述】:

我只需要复制文件夹中的最新文件夹。我在网上看到的所有例子都是为了复制最新的文件。是否可以通过批处理文件复制最新的文件夹?

【问题讨论】:

    标签: batch-file dos


    【解决方案1】:
    CD folder
    FOR /F "USEBACKQ tokens=*" %%A IN (`DIR /A:D /O:-D`) DO (
     XCOPY "%%A" "new folder" /E /H /K /Y
     GOTO:OUT
    )
    
    :OUT
    

    将目录更改为相关文件夹。在当前文件夹中的所有文件夹列表上使用FOR 循环,按日期排列它们,最新的在顶部,然后将该文件夹的所有内容复制到新目标(/E 复制所有目录和子目录,即使为空, /H 包括所有隐藏和系统文件,/K 保留属性设置,/Y 禁止复制提示),然后在第一次迭代后离开循环(即最新文件)

    【讨论】:

      【解决方案2】:

      你试过Robocopy吗?

      编辑以解决否决票

      robocopy .\src .\dest /e /xo /dcopy:T
      

      选项

      /xo 
      Excludes older files.
      
      /e  
      Copies subdirectories. Note that this option includes empty directories.
      
      /dcopy:T    
      Copies directory time stamps.
      

      【讨论】:

      • 已更新以解决反对票。如果答案有问题,请评论为什么它不可行、没有解决问题或不正确。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-31
      • 1970-01-01
      相关资源
      最近更新 更多