我似乎无法让if语句适用于Hello World。我认为这是因为空间,但任何帮助都会受到赞赏。
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 :(得分: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
)