2015-01-14 29 views
1

(聲明:我查閱了超過SO張貼了這個問題之前,問題涉及十幾個,但未能找到答案)如何用繩子檢查環境變量的值包含空格

如何檢查包含帶空格的字符串的變量的值?

例如:

set str1=has space 
if %str1%==has space echo Equal 

上面產生以下錯誤:

space==has was unexpected at this time.

在右側的字符串不幫助周圍添加雙引號。

我使用命令提示符[版本6.1.7601]在Windows 7

回答

2

使用雙引號:

set str1=has space 
if "%str1%"=="has space" echo Equal 
+0

謝謝! (知道它會變得簡單。) – Sabuncu

+0

順便說一下,re:你對問題標題的編輯:所討論的變量是一個簡單的變量,而不是一個環境變量。這樣的短暫變量在其生命週期中被認爲是一個環境變量嗎? – Sabuncu

+0

@Sabuncu:在Windows中沒有像「DOS變量」這樣的東西(因爲沒有「DOS」這樣的東西了)。它始終是一個環境變量。您在控制面板中設置的唯一區別與您在批處理文件中設置的區別僅在於變量的生命週期。如果您從批處理文件中調用程序,則無法確定該變量是全局定義的還是僅針對'cmd.exe'的此實例定義的。 –

相關問題