2010-11-18 39 views
1

例如:如何在使用Windows cmdline的長襯裏中設置變量?

我想設置一個變量,然後讓它在同一行輸出。

集/ P消息= & &呼應%MESSAGE%

但它確實不是很喜歡的工作你期望。有沒有辦法管它回聲還是有更好的方式來分隔單獨的命令?

謝謝。

+0

非常感謝您的幫助! – max 2010-11-18 22:25:03

回答

2

這不能在這裏嘗試,因爲環境變量被擴展,而解析一行,而不是執行它。由於%MESSAGE%僅在執行第一部分後纔有意義,所以這不起作用。

然而,這會:

setlocal enabledelayedexpansion 
set /p MESSAGE= && echo !MESSAGE! 

的延遲擴展的討論,請參閱help set

+0

由於某些原因,直接在cmd中輸入時不起作用 – Lekensteyn 2010-11-18 18:43:00

+2

@Lekensteyn:使用'cmd/v:on'啓動'cmd'以啓用延遲擴展。 'setlocal'用於批處理文件,就像'goto'一樣。它們在交互式命令行中不起作用。 – Joey 2010-11-18 18:43:34

+0

這樣做。 – Lekensteyn 2010-11-18 18:45:20