我有一个批处理文件,它首先创建另一个包含 ClearCase cleartool 命令的批处理文件,然后运行它:
ECHO cleartool lsactivity -long "%ACTIVITY%"^>"%OUTPUTFILE%">FILETORUN.bat
CALL FILETORUN.bat
运行批处理时,FILETORUN.bat
会以正确的格式生成,但CALL
它会被完全忽略。
如果我在日志文件ECHO
之后输出CALL
,我可以看到脚本只是跳过它。
会是什么呢?
我试过删除CALL
,但没有任何区别。
编辑:解决方案
谢谢大家的意见。我发现了问题。在脚本中写入批处理和批处理调用之前,有一个命令可以将信息从文件中读取到变量中:
SET /p FILETODELETE=<rmname_%CLEARCASE_USER%.tmp
它只读取第一行。由于某种原因,这与临时批处理文件产生了冲突,我不知道为什么。我使用不同的解决方案从文件中读取第一行,并且不再发生冲突:
(set FILETODELETE=)
for /f "delims=" %%q in (rmname_%CLEARCASE_USER%.tmp) do if not defined FILETODELETE set FILETODELETE=%%q
如果有人能提供一些启示,那就太好了!