2015-06-15 3 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

Спасибо вам большое! –

 Смежные вопросы

  • Нет связанных вопросов^_^