【问题标题】:Copy Folders and subfolders on a directory to another using batch file使用批处理文件将目录上的文件夹和子文件夹复制到另一个目录
【发布时间】:2013-09-04 22:13:06
【问题描述】:

我的计算机上有一个文件夹,我想安排(使用任务计划程序)每天的备份。我想要做的是,如果目标文件夹已经包含源路径中的文件夹(包括子文件夹和文件),它将被跳过并继续复制尚未在目标文件夹中的其他文件夹(我不想要覆盖现有文件夹或子文件夹甚至文件)。我怎么能对我的批处理文件这样做?

例如 源文件夹包含: 文件夹 1 文件夹 2 文件夹3

目标文件夹包含: Folder1(源上的同一文件夹) Folder2(源上同一个文件夹)

该命令将仅复制 Folder3。

【问题讨论】:

标签: command-line batch-file


【解决方案1】:

这会将源镜像到目标并跳过已经存在的文件,但也会删除源中不再存在的文件(从目标) - Vista 和更高版本具有 Robocopy。 XP可以下载。

robocopy "c:\source" "d:\target" /mir

或 UNC 路径

robocopy "\\server1\share\" "\\server2\\share2" /mir

【讨论】:

    【解决方案2】:

    有多种备份和复制实用程序可以执行此操作,还有许多其他选项可供您使用。

    但是,仅针对您声明的要求,编写 BAT 解决方案很容易...

    阅读HELP FOR,然后试试这个简单的FOR 命令

    for /D %%a in (*) do (
      if not exist %dest%\%%a (
        echo xcopy /s %%a %dest%
      )
    )
    

    验证输出,然后删除ECHO

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-09-10
      • 1970-01-01
      • 1970-01-01
      • 2013-05-21
      • 2014-03-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多