执行批处理文件时出错

Error while executing batch file

这是我第一次创建批处理文件。我试图通过在批处理文件中添加以下所有内容来执行。但是流程在 for 循环处停止。这些命令在命令提示符下直接执行时有效。而且我也面临复制命令错误

SET ROOT="C:\Rahul\Projects\sub-folder"

SET WEB1=%ROOT%\folder1.war
SET WEB2=%ROOT%\folder2.war

SET SOURCE=%WEB1% %WEB2% 

SET TARGET=C:\Rahul\softwares\apache-tomcat-6.0.29\webapps\

c:
cd C:\Rahul\softwares\apache-tomcat-6.0.29
rmdir /q /s work\Catalina
cd webapps

FOR %i in ("*.war") do rmdir /q /s  %~ni
FOR %i in ("*.war") do del /q /s  %i
FOR %i in (%SOURCE%) do copy %i %TARGET%

FOR %i in ("*.war") do rmdir /q /s %~ni 将在命令行中工作,但不能在批处理中工作。在批处理文件中,您必须将 %i 替换为 %%i。应该是这样。

根据我的经验,在 SET 语句中不使用引号通常更容易。然后,用到就用引号。

SET THEVAR=C:\Program Files
DIR "%THEVAR%\Common Files"