2014-09-01 238 views
1

我想通過使用if來查看一個字符串是否與另一個字符串相同,但字符串中包含空格!如何在「if」中使用空格?

它看起來是這樣的:

if %DriveDir%==NOT BOOT FILES echo Working 

簡單地說,它說:「BOOT是在這個時候意外」

if %DriveDir%=="NOT BOOT FILES" echo Working 
if %DriveDir%==%nbf% echo Working 

我一直在使用引號和存儲在像變量的字符串嘗試這個,但沒有什麼變化。

回答

3

您還應該爲變量添加引號。

if "%DriveDir%"=="NOT BOOT FILES" echo Working 
+0

噢,我的上帝,我完全忘了那個 – cpguy5089 2014-09-02 01:04:40

0

批處理文件的解釋是非常直接的。你並沒有真正使用變量,它們都被替換爲它們在加載時的值。太行

if %DriveDir%=="NOT BOOT FILES" echo Working 

被擴大到

if NOT BOOT FILES=="NOT BOOT FILES" echo Working 

這顯然是語法不正確。你需要在雙方都有相同的表達,並且NOT被解析爲IF NOT…,所以你需要圍繞兩個引號。