CMD批量转义params中的环境变量

CMD批量转义params中的环境变量

我必须编写一个带有环境变量参数的批处理文件:

c:\myapp.exe -f "%APP_HOME%\file.conf" 

我需要传递字符串%APP_HOME%作为参数,而不是其值。我该怎么做?

换句话说,我不想在批处理运行时删除变量,但我想让应用程序将其用作参数化路径,如果我更改这个环境变量,我不想更改应用程序中的变量。

答案1

我需要传递字符串“%APP_HOME%”作为参数

  1. %用。。。来代替^%
  2. 删除"

    c:\myapp.exe -f ^%APP_HOME^%\file.conf

测试.cmd:

@echo %1 %2 %3

输出:

F:\test>test c:\myapp.exe -f ^%APP_HOME^%\file.conf
c:\myapp.exe -f %APP_HOME%\file.conf
F:\test>

进一步阅读

相关内容