Eug*_*mov 5 windows command-line
在我的批处理文件中,我有许多具有相同参数的相同程序的调用:
program.exe file1.txt -parameter1 -parameter2 -parameter3 -parameter4 >> output.log
program.exe file2.txt -parameter1 -parameter2 -parameter3 -parameter4 >> output.log
...
Run Code Online (Sandbox Code Playgroud)
我可以声明一个包含字符串“-parameter1 -parameter2 -parameter3 -parameter4 >> output.log”的变量并像这样使用它:
Set variable=-parameter1 -parameter2 -parameter3 -parameter4 >> output.log
program.exe file2.txt %variable%
Run Code Online (Sandbox Code Playgroud)
我试图这样做,但它不起作用。如果可能,正确的语法是什么?
在 SET 命令中,您必须使用 ^ 转义每个 > 符号。
这可以防止 SET 命令将 >> 解释为输出的重定向。
所以:
Set variable=-parameter1 -parameter2 -parameter3 -parameter4 ^>^> output.log
program.exe file2.txt %variable%
Run Code Online (Sandbox Code Playgroud)
如果您要调用子 shell(使用 CMD /C),那么 Lemur 的答案是正确的版本,但对于直接调用则不需要。
| 归档时间: |
|
| 查看次数: |
127 次 |
| 最近记录: |