2017-08-31 184 views
2

我想讓這樣的事情如何在變量中添加'&'符號?

set ac=&Hello 

但它會說「你好」不是一個命令。我試着把這樣的雙引號,

set ac="&Hello" 

但它會顯示雙引號。有人有想法嗎?

+0

怎麼樣'設置 「AC =&Hello」 的',然後再輸出延遲的擴張? – SteveFest

+0

@RajaEzzy在[在命令行中使用'set var = text'之後,爲什麼沒有使用'echo%var%'輸出字符串?](https://stackoverflow.com/a/26388460/3074564)詳細說明如何爲環境變量賦值,以及爲什麼應該幾乎總是使用'set'variable = value「'語法。 – Mofi

回答

3

使用,一個人可以echo任何內容,甚至特殊字符沒有逃脫。在後續的例子看看:

較長,但更明確的解決方案

@echo off 
setlocal enableDelayedExpansion 
set "ac=&Hello" 
echo !ac! 

這將輸出&Hello如你預期。還有一些其他的方法,但這是最簡單的一個。


較短,但梅西耶解決方案

@echo off 
setlocal enableDelayedExpansion 
set "ac=&Hello"&&echo !ac! 

呈三角以上,這個片段只是移動echo到同一行set聲明。這將更容易看到當文本的大部分內容echo


2

你可以試試這個:

@echo off 
set ab=^^^&hello 
echo %ab% & pause 
相關問題