2015-06-15 138 views
0

我似乎无法让if语句为Hello World工作。我认为这是因为空间,但任何帮助将不胜感激。if语句中的空格

if %A%==Chrome (
    start "" "C:\Users\Matthew\Appdata\Local\Google\Chrome\Application\chrome.exe\" 
) else (
    if %A%==Steam (
     start "" "C:\Program Files (x86)\Steam\Steam.exe\" 
    ) else (
     if %A%==CMD (
      start 
     ) else (
      if %A%==System32 (
       start "" "C:\Windows\System32\" 
      ) else (
       if %A%==Appdata (
        start "" "C:\Users\Matthew\Appdata\" 
       ) else (
        if %A%==Skype (
         goto Skype 
        ) else (
         if "%A%"=="Hello World" (
          goto HelloWorld 
         ) 
        ) 
       ) 
      )   
     ) 
    ) 
) 

回答

3

如果%A%内容包括空格(Hello world),如果你希望在你的可变空间的首要条件会失败,因为它会被解析为

if Hello World==Chrome (

,您需要使用报价不在最后一个条件,但在所有条件下

if "%A%=="Chrome" (
    start "" "C:\Users\Matthew\Appdata\Local\Google\Chrome\Application\chrome.exe\" 
) else if "%A%"=="Steam" (
    start "" "C:\Program Files (x86)\Steam\Steam.exe" 
) else if "%A%"=="CMD" (
    start 
) else if "%A%"=="System32" (
    start "" "C:\Windows\System32\" 
) else if "%A%"=="Appdata" (
    start "" "C:\Users\Matthew\Appdata\" 
) else if "%A%"=="Skype" (
    goto Skype 
) else if "%A%"=="Hello World" (
    goto HelloWorld 
) 
+0

非常感谢! –