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$
私はここで何をすべきか考え出している。私がどのように特殊文字をエスケープしても、私が望む結果を得ることはできません。
どうすればいいですか? echo a^!^$5
a!$5
は複製できません。 – Stephan
'$'記号は 'cmd'にとって特別なものではないので、それをエスケープする理由はありません。 [遅延](http://ss64.com/nt/delayedexpansion.html)が有効になっている場合、 '! 'マークには特別な意味があります。 – aschipfl