0

我编写了以下批处理文件,它将 100 个段落写入 .bat 文件,并对所引用的文件名进行增量编号更改。

for /l %%N in (1 5 500) do (
echo cd /D "C:\batch"
echo set PATH=C:\batch; &PATH%
echo echo Simulation 'g=0.00%%N.pre' started...
echo call %SOLVERQSP%-fp 1 -nt 3 ^
"C:\batch\0.00%%N.pre" > "C:\batch\g=0.00%%N.out"
echo echo Simulation 'g=0.00%%N' finished...
echo echo.

问题是当存在 %PATH% 和 %SOLVERQSP% 命令时未创建批处理文件。如果我删除这些脚本运行良好。关于我哪里出错或如何避免这种情况的任何建议

4

2 回答 2

0

只需%将它们加倍即可逃脱:

echo set PATH=C:\batch;%%PATH%%
于 2012-10-23T08:35:46.987 回答
0

您应该使用一些引号并避免在您的情况下使用插入符号

for /l %%N in (1 5 500) do (
  echo cd /D "C:\batch"
  echo set "PATH=C:\batch; %PATH%"
  echo echo Simulation 'g=0.00%%N.pre' started...
  echo call %%SOLVERQSP%%-fp 1 -nt 3 "C:\batch\0.00%%N.pre" > "C:\batch\g=0.00%%N.out"
  echo echo Simulation 'g=0.00%%N' finished...
  echo echo.
)
于 2012-10-23T09:45:42.457 回答