2012-10-01 21:32:51 +0000 2012-10-01 21:32:51 +0000
62
62

使用 robocopy 和排除多个目录

我正在尝试从服务器上复制一些目录,然后再从备份中恢复(我的最新备份已经损坏,所以我必须使用旧的备份 :( )。我是在Windows恢复环境中,可以访问服务器的文件系统G: 我正在尝试从服务器上复制一些目录,然后再从备份中恢复(我的最新备份已经损坏,所以我必须使用旧的备份 :( )。我是在Windows恢复环境中,可以访问服务器的文件系统和我的备份介质C: 我正在尝试从服务器上复制一些目录,然后再从备份中恢复(我的最新备份已经损坏,所以我必须使用旧的备份 :( )。我是在Windows恢复环境中,可以访问服务器的文件系统G: 我正在尝试从服务器上复制一些目录,然后再从备份中恢复(我的最新备份已经损坏,所以我必须使用旧的备份 :( )。我是在Windows恢复环境中,可以访问服务器的文件系统和我的备份介质。但是,由于我对Linux比较熟悉,所以在Windows中的命令行中,特别是在robocopy中遇到了一点麻烦。我不知道/XD`选项的语法。我想做的是:

robocopy G: C:\backup /CREATE /XD "dir1","dir2", ...

注:*我想说明的是,我想在保留目录结构的同时复制实际的文件。我刚刚检查了一下,/create只创建了空文件。很奇怪。

答案 (4)

93
93
93
2012-10-01 22:13:49 +0000

我用了一点试错和/L(在真正执行之前测试命令),我想出了这个问题。我最终得到的命令是:

robocopy G: C:\backup /MIR /XD G:\dir1 "G:\dir 2" G:\dir3 ...

显然,包含后缀斜线会使robocopy无法正确解析目录列表,所以一定要注意不要在目录名中包含后缀斜线,并且记得在目录名中带空格的目录周围加上引号。

编辑:*经过一番研究,我对该命令进行了一些改进:

robocopy G: C:\backup /MIR /Z /LOG:C:\todaysdate-backup.log /XF *.iso *.log *.au /XD G:\dir1 ...

补充如下:

  • /MIR允许重启工作
  • /Z是很好的自我说明。
7
7
7
2017-10-22 10:08:32 +0000

你必须重复/XD部分

C:\>robocopy "C:\Users\weberjn\Google Drive" "u:\Google Drive" /e /dcopy:t /copy:DT /r:0 /XD "C:\Users\weberjn\Google Drive\photos" /XD "C:\Users\weberjn\Google Drive\Google Photos"
5
5
5
2016-04-07 19:59:41 +0000

我知道这并不能回答OP的问题,但对这里的人来说,从google。

坏:

::
:: Exclude These Directories :
::
    /XD :: eXclude Directories matching these names
        "Temporary Internet Files"

好:

::
:: Exclude These Directories :
::
    /XD :: eXclude Directories matching these names
        Temporary Internet Files

好:

&001

放置任意多的排除法,一行接一行,不使用引号(不管有没有空格)。

2
2
2
2018-03-18 05:36:38 +0000

我的解决方案是创建一个包含我想包含或排除的文件或目录的.txt文件。我把这些文件放在我的 “备份 "文件夹下的子文件夹 "rcXcludes "中。我给这些文件命名的方法如下。我先用 "rc”(表示 robocopy)作为前言,然后在 robocopy 命令中为应用程序或文件系统的一部分加上一些可识别的符号,然后加上 “B "或 "R”(表示备份或还原),然后是 “I "或 "X”(表示包含或排除),然后是 “D "或 "F”(表示目录或文件)。我在每个条目之间用双引号和空格包围。一个 “Include "文件可以有文件或目录,但目录必须有一个反斜杠。在 "Exclude "文件中的目录不使用反斜线。任何目录条目都是相对于 robocopy 命令中的源路径而言的。任何这些.txt文件的全部内容必须在一行中,并且_不要有一个carraige回车线。在我的批处理文件中,我使用SET /P命令将.txt文件导入到一个变量中。然后,我用这些变量为FILES或/XF或/XD后的变量。例如,要备份当前用户的Chrome配置文件,而不需要复制整个 "Default "文件夹,我使用以下命令。