我正在为我的学院制作备份程序,但是显示了robocopy副本
Started : 11 April 2015 01:21:07 PM
Source - F:\Training\HPES\CoreJava\
Dest - F:\11-04-2015\
Files :
Options : /DCOPY:DA /COPY:DAT /R:1000000 /W:30
------------------------------------------------------------------------------
ERROR : Invalid Parameter #3 : "\0121PM"
Simple Usage :: ROBOCOPY source destination /MIR
source :: Source Directory (drive:\path or \\server\share\path).
destination :: Destination Dir (drive:\path or \\server\share\path).
/MIR :: Mirror a complete directory tree.
For more usage information run ROBOCOPY /?
我的代码
for /f "tokens=1* delims=" %%a in ('date /T') do set datestr=%%a
for /f "tokens=1,2,3 delims=: " %%A in ('TIME /T') do set mytime=%%A%%B%%C
pause
mkdir %datestr%
cd %datestr%
mkdir %mytime%
cd %mytime%
pause
robocopy F:\Training\HPES\CoreJava F:\%datestr%\%mytime% /e
pause
它显示无效的参数错误但是当我通过删除源部分中的%mytime%块来运行此代码时,它可以正常工作。帮助
答案 0 :(得分:0)
在
for /f "tokens=1* delims=" %%a in ('date /T') do set datestr=%%a
date /t
在其输出的末尾包含一个空格,并且此空间包含在datestr
变量中以及使用该变量执行的最终命令中。因此F:\%datestr%\%mytime%
包含一个空格(位于%datestr%
的末尾,将一个参数转换为两个。
如果您想保留空格,请使用引号:"F:\%datestr%\%mytime%"
如果您不想保留空间,请查看输出,您可以更改为
for /f %%a in ("%date%") do set "datestr=%%a"