当我输入:
set hi=Hello^&World!
echo %hi%
打印Hello并告诉我World不是命令
我想打印Hello& World!
怎么做?
答案 0 :(得分:18)
这对我有用:
set "hi=Hello^&World!"
echo %hi%
输出
Hello&World!
答案 1 :(得分:4)
回显变量内容的唯一安全方法是在此处使用延迟扩展 如果使用百分比扩展,则取决于内容是否失败。
set "var1=Hello ^& World"
set "var2=Hello & World"
setlocal EnableDelayedExpansion
echo !var1!
echo !var2!
echo %var1%
echo %var2% -- fails
延迟扩展更有用,因为它不解释任何特殊字符 有关详情,请访问SO: How the parser works
答案 2 :(得分:2)
刚
echo Hello ^& World!
工作
修改强>
所以问题不在于ECHO
命令,而在于变量的赋值,正如@Bali正确指出的那样。