我正在使用 robocopy 批处理文件来备份我的工作。这是我的 .bat 文件中的代码:
@echo off
cls
echo press any key to continue backup!
pause
ROBOCOPY "F:\source" "D:\destination" /s /e /xf *.sas7bdat /xd "F:\directory_to_exclude"
echo backup complete
pause
然而,这不起作用,并且日志输出显示 robocopy 没有区分目标和源。
Source: F:\source D:\destination
Dest -
Files *.*
Files excluded: *.sas7bdat
Directories excluded: F:\directory_to_exclude
---------------------------------------------
Error: no folder destination specified
robocopy 语法需要做哪些更改?
答案1
可能的问题是您的源或/和目标以 结尾\
。因此您有该字符序列\"
,并将robocopy
其解释为文字 的转义序列"
。您必须将\
其删除或加倍:
ROBOCOPY "F:\source" "D:\destination"
ROBOCOPY "F:\source\\" "D:\destination\\"
答案2
您的 Robocopy 输出在 Source: 行中提到了源路径和目标路径。您确定您正确引用了该命令吗?
我只复制了 robocopy 命令,下面是我的输出:
-------------------------------------------------------------------------------
ROBOCOPY :: Robust File Copy for Windows
-------------------------------------------------------------------------------
Started : Thursday, March 26, 2015 9:48:44 AM
Source - F:\source\
Dest - D:\destination\
Files : *.*
Exc Files : *.sas7bdat
Exc Dirs : F:\directory_to_exclude
Options : *.* /S /E /DCOPY:DA /COPY:DAT /R:1000000 /W:30
------------------------------------------------------------------------------
当我错误地(双重)引用源和目标时,我得到以下结果(像您的一样):
Source - F:\source D:\destination\