29

我正在尝试使用 robocopy 但由于目录名称中的空格而无法使其工作。
我正在尝试将 3 个目录:我的文档、我的音乐和我的图片复制到 'C:\test-backup' 但希望最终结果是
'C:\test-backup\My Documents'
'C:\test-backup \我的音乐'
'C:\test-backup\我的图片'

我的命令不起作用:
robocopy C:\Users\Angie C:\test-backup "My Documents" /B /E /R:0 /CREATE /NP /TEE /XJ /LOG+:"CompleteBackupLog.txt"

无论我做什么,它都不会发生。有人有什么建议或技巧吗?

4

8 回答 8

105

经过一些试验和错误并观察结果(换句话说,我破解了它),我让它工作了。

使用带空格的路径名需要引号。诀窍是在结束引号之前的路径名之后必须有一个空格......就像这样......

robocopy "C:\Source Path " "C:\Destination Path " /option1 /option2...

这几乎看起来像一个错误,当然不是很直观。

托德·K。

于 2015-05-14T17:53:34.103 回答
36

如果路径不包含尾随反斜杠,则无需在结束引号之前添加空格,因此以下命令应该可以工作:

robocopy "C:\Source Path" "C:\Destination Path" /option1 /option2...

但是,以下将不起作用:

robocopy "C:\Source Path\" "C:\Destination Path\" /option1 /option2...

这是由于此处描述的转义问题:

\ 转义可能会导致包含尾随反斜杠的引用目录路径出现问题,因为行尾的右引号 " 将被转义 \"。

于 2016-04-01T13:46:01.347 回答
12

分开My DocumentsC:\test-backup怎么回事?为什么引号只在周围My Documents

我假设这是一个错字,请尝试使用robocopy C:\Users\Angie "C:\test-backup\My Documents" /B /E /R:0 /CREATE /NP /TEE /XJ /LOG+:"CompleteBackupLog.txt"

[编辑:]由于文档指定的语法 ( robocopy <Source> <Destination> [<File>[ ...]]) 说File,它可能不适用于Folders

你必须使用robocopy "C:\Users\Angie\My Documents" "C:\test-backup\My Documents" /B /E /R:0 /CREATE /NP /TEE /XJ /LOG+:"CompleteBackupLog.txt"

于 2012-08-19T16:37:36.683 回答
6

robocopy 在解释源名称时存在错误。如果您在路径末尾包含一个反斜杠来描述一个文件夹,它会一直将源的字符串包含在该行的其余部分中。IE

robocopy "C:\back up\" %destination% /e 这里什么都不会转到目标字符串

robocopy "C:\back up" %destination% /e 但这有效

我可能错了,但我认为两者都应该起作用!

于 2020-09-18T01:43:14.420 回答
2
robocopy "C:\Users\Angie\My Documents" "C:\test-backup\My Documents" /B /E /R:0 /CREATE /NP /TEE /XJ /LOG+:"CompleteBackupLog.txt"
robocopy "C:\Users\Angie\My Music" "C:\test-backup\My Music" /B /E /R:0 /CREATE /NP /TEE /XJ /LOG+:"CompleteBackupLog.txt"
robocopy "C:\Users\Angie\My Pictures" "C:\test-backup\My Pictures" /B /E /R:0 /CREATE /NP /TEE /XJ /LOG+:"CompleteBackupLog.txt"
于 2012-08-19T16:25:08.930 回答
1

当您指定路径上的最后一个目录时,请删除最后一个 .

例如“\server\directory with space\directory with space”。

应该这样做。

于 2017-01-31T17:22:37.143 回答
-3

如果此文件夹是命令中的第一个文件夹,则它不能与文件夹名称中的空格一起使用,因此请用下划线替换文件夹名称中的空格。

于 2013-12-18T07:55:36.310 回答
-3

你应该只在路径之前写括号:"c:\program files\

于 2015-02-11T14:20:51.957 回答