批处理文件输出无法按预期工作

时间:2018-02-15 16:52:41

标签: batch-file escaping

首先,在建议之前,我已通过注册表全局启用DELAYEDEXPANSION,并且我已尝试在本地启用。

我试图将HTML预处理代码回显到批处理文件中,以下内容按预期工作:

echo ^<!-- @include ./%b%/main.inc --^> >> search-%b%.inc 

例如,它将<!-- @include ./criteria/main.inc -->回显到文件search-criteria.inc

但是,以下情况并非如此:

echo ^<!-- @include ./!b!/main.inc --^> >> search-!b!.inc 

虽然,我希望结果是相同的,但是search-criteria.inc中显示的结果是<b/main.inc -->

这里发生了什么?

作为附注 - Sublime似乎知道我的语法中存在错误,因为在第一个<之后突出显示中断。如果我逃离第一个!,突出显示会再次开始工作,但结果是相同的。

1 个答案:

答案 0 :(得分:2)

使用双插入符号!转义第一个^^!。批处理将-- @include ./解释为变量。