我该怎么做:
echo [-help | -h]: displays help
在我这样做的那一刻,我得到了:
该命令的语法不正确。
这可行,但
echo "[-help | -h]: displays help"
它还会打印引号,我不希望这样。
答案 0 :(得分:3)
使用此
echo [-help ^| -h]: displays help
^
转义管道。
答案 1 :(得分:1)
有多种方式:
用插入符号逃跑
您可以使用插入符号
回声[-help ^ | - ?]
使用延迟扩展
由于不再解析延迟扩展的内容,它可以包含所有字符。
setlocal EnableDelayedExpansion 设置“helpStr = [-help | - ?]” echo!helpStr!
消失的引语
行情也可以逃避特殊字符,但它们也会得到回应
消失的引号与普通引号类似,但在回显之前它们将被替换为空。
3.1对于延迟扩展,你添加!“=!你需要引用的任何地方,这个表达式将被替换为什么,稍后
setlocal EnableDelayedExpansion
echo !"=![ -help | -?]
3.2如果没有延迟扩展,您可以使用FOR-loop
FOR %%^" in ("") do (
echo %%~"[ -help | -?]`
)
答案 2 :(得分:1)
DOS中的转义字符是(通常)^
所以试试:
echo [-help ^| -h]: displays help
虽然有很多例外,但有点奇怪。见这里:http://www.robvanderwoude.com/escapechars.php
答案 3 :(得分:0)
[-help | -h]
表示-help
或-h
。尝试再次运行该命令,-h
作为唯一参数。