批处理文件中的转义字符

时间:2016-04-20 13:24:37

标签: batch-file

我正试图获得如下所示的转义字符:

C:\\Program Files (x86)\\Java\\jdk1.7.0_25

以下是批处理脚本中的代码:

set AGNT_JAVA_HOME=%JAVA_HOME% SET
set AGNT_JAVA_HOME=%AGNT_JAVA_HOME:\\=\\\\%

但值得的是:

AGNT_JAVA_HOME value is C:\Program Files (x86)\Java\jdk1.7.0_25

知道需要在这里添加什么才能将值作为第一行。

1 个答案:

答案 0 :(得分:2)

批处理的转义字符为^,而不是\

\字面值不需要转义。

所以你需要的只是:

set AGNT_JAVA_HOME=%AGNT_JAVA_HOME:\=\\%

但是将整个SET赋值括在引号中是更安全的,以防万一AGNT_JAVA_HOME包含像&这样的有毒字符。

set "AGNT_JAVA_HOME=%AGNT_JAVA_HOME:\=\\%"