转义使用插入符号()
使用插入符号(^
)可以转义大多数特殊字符。看一下下面的例子。
echo > Hi
echo ^> Hi
第一个命令不会输出 > Hi
,因为 >
是一个特殊字符,这意味着将输出重定向到文件。在这种情况下,文件名为 Hi
然而在第二个命令中,> Hi
将毫无问题地输出,因为插入符号(^
)告诉 >
停止作为重定向输出到文件命令,现在 >
只是一个普通字符。
这是一个可以转义的特殊字符列表(从 Rob van der Woude 的页面中获取和编辑)
字符 | 转义结果 | 备注 |
---|---|---|
^ | ^^ | |
& | ^& | |
< | ^ < | |
> | ^> | |
^ | ||
\ | ^ \ | |
! | ^^! | 仅在启用 DelayedExpansion 时才需要 |
逃离插入符号
可以将插入物堆叠起来以转义其他插入符号,请考虑以下示例。
输入 | 输出 |
---|---|
^& | & |
^ ^ ^& | ^& |
^ ^ ^ ^ ^& | ^^& |
注意:粗体形式的插入符号将被转义。
安全问题
这里有点偏离主题,但这非常重要! 文件末尾的不需要的插入符号转义可能会导致内存泄漏!
any-invalid-command-you-like-here ^
此命令会泄漏所有内存,导致系统完全无法使用 ! 有关更多信息,请参见此处