robocopy无效参数“ - ”

时间:2015-05-11 05:33:15

标签: windows batch-file command-line cmd

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

这是我正在运行的命令:

ROBOCOPY "C:\test\dash2\Hello - 4\" "C:\test\dash2\Hello - 4\..\" /MOV

这就是我得到的错误

-------------------------------------------------------------------------------
   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 : "-"

我用双引号括起来源和目的地。 但根据ROBOCOPY日志,源和目标似乎是错误的

修改

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

2 个答案:

答案 0 :(得分:3)

ROBOCOPY "C:\test\dash2\Hello - 4\" "C:\test\dash2\Hello - 4\..\" /MOV
                                 ^                             ^

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

已修改以适应评论

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

robocopy "%source%\." "%target%\."

答案 1 :(得分:1)

好吧,你似乎必须逃避双引号。 诀窍是只能逃避第二个双引号

所以正确的解决方案是:

ROBOCOPY "C:\test\dash2\Hello - 4\/" "C:\test\dash2\Hello - 4\..\/" /MOV