关于如何在cmd.exe
中转义给定角色,StackOverflow上有很多问题。但是,似乎没有一种解决方案适用于我的情况。
基本上,我想要做的是将环境变量FOO
设置为a!$5
。
我尝试了显而易见的事情:
set FOO=a!$5
给出了:
History expansion: set FOO=ae5
很公平,我想我必须逃离!
或$
,或两者兼而有之。然而似乎没有任何效果。
我能做到:
echo a^!
a!
和
echo a$
a$
甚至:
echo a^$
a$
可是:
echo a^!$
History expansion: echo a^a^$
aa$
我不知道该怎么做。似乎无论我如何逃避特殊角色,我都无法得到我想要的结果。
我该怎么做?
答案 0 :(得分:1)
答案 1 :(得分:0)
使用^
echo a^!^$5
a!$5
答案 2 :(得分:0)
不是答案,但是当我输入设置FOO = a!$ 5时,这正是我得到的。我认为它可能需要一个前任
Setlocal EnableDelayedExpansion
但它没有这样做(也许这是我的默认设置?)抱歉,我无法帮助!