robocopy无效参数“-”

Pri*_*ora 0 windows command-line cmd batch-file

我正在尝试完成我的批处理脚本,但是在某些情况下它会失败。

这是我正在运行的命令:

ROBOCOPY "C:\test\dash2\Hello - 4\" "C:\test\dash2\Hello - 4\..\" /MOV
Run Code Online (Sandbox Code Playgroud)

这是我得到的错误

-------------------------------------------------------------------------------
   ROBOCOPY     ::     Robust File Copy for Windows

-------------------------------------------------------------------------------

  Started : Mon May 11 01:28:46 2015

   Source - C:\test\dash2\Hello - 4" C:\test\dash2\Hello\
     Dest -

    Files :
  Options : /COPY:DAT /R:1000000 /W:30

------------------------------------------------------------------------------

ERROR : Invalid Parameter #2 : "-"
Run Code Online (Sandbox Code Playgroud)

我确实用双引号括住了源和目标。但是根据ROBOCOPY日志,源和目标似乎是错误的

编辑

似乎认为空格是分隔符,因此将“-”视为第二个参数。

MC *_* ND 5

ROBOCOPY "C:\test\dash2\Hello - 4\" "C:\test\dash2\Hello - 4\..\" /MOV
                                 ^                             ^
Run Code Online (Sandbox Code Playgroud)

删除转义引号的结尾反斜杠

编辑以适应评论

如果源和目标是变量,而删除反斜杠是一个问题,则可以使用

robocopy "%source%\." "%target%\."
Run Code Online (Sandbox Code Playgroud)