当我运行该文件时,它会出错并显示“文件名、目录名或卷标语法不正确。我的文件现在只有一行要测试,如下所示:
@echo off
robocopy "C:\FTPServer\...\...\" "C:\FTPServer\local\...\" /XA:H /REG > #C:\FTPserver\...\...\Logs\Log-%date:~4,2%%date:~7,2%%date:~10,4%_%time:~0,2%:%time:~3,2%.log
...只是为了掩盖目录,因为它们包含信息。
我的主管根据我的日志记录方式说了这一点,当我们在没有我的日志的情况下运行时,它也能正常工作。有什么更好的记录方法吗?
答案1
尝试像这样构造它:
@echo off
set "src=C:\FTPServer\...\...\Source"
set "des=C:\FTPServer\...\...\Destination"
set "log=C:\FTPServer\...\...\Logs"
robocopy "%src%" "%des%" /XA:H /REG /log:"%log%\Log-%date:~4,2%%date:~7,2%%date:~10,4%_%time:~0,2%:%time:~3,2%.log"
主要区别在于:删除\
robocopy 路径中的尾部,使用/log
选项而不是将其导入日志文件,并将日志路径放在双引号中,这样您就不会遇到空格或其他奇怪的东西的问题。我使用变量,这样它就更容易放入块窗口中,尽管我确实倾向于在处理长路径时推荐它们。