我正在寫一個批處理代碼。我想接受來自用戶的一個字符,如果是真的,則應該執行一組語句,否則應該執行另一組語句。如何在批處理編程中使用if-else語句?
我試圖做到這一點:
set /p aj=
if %aj%==y
(
set of commands...
)
else (
another set of commands...
)
但我無法獲得完美的輸出我應該得到。請幫忙。
我正在寫一個批處理代碼。我想接受來自用戶的一個字符,如果是真的,則應該執行一組語句,否則應該執行另一組語句。如何在批處理編程中使用if-else語句?
我試圖做到這一點:
set /p aj=
if %aj%==y
(
set of commands...
)
else (
another set of commands...
)
但我無法獲得完美的輸出我應該得到。請幫忙。
如果您的代碼腳本很長,我發現使用goto
更容易。嘗試是這樣的:
set /p "aj=: "
if /i "%aj%"=="y" goto :yes
:no
REM another set of commands...
goto :post
:yes
REM set of commands...
goto :post
:post
REM Code after if-statement
你知道你不需要enabledlayedexpansion
,你可以有代碼很長的片約格式化喜中有憂的方式。
打開命令提示符窗口,輸入if /?
或help if
,打RETURN或ENTER和讀取輸出的幫助。
set /p "aj=Continue (y/n)? "
if /i "%aj%"=="y" (
rem set of commands...
) else (
rem another set of commands...
)
(
必須在同一行if
命令。 ) else (
也必須在同一行上。
ty我累了,因爲你建議,但它仍然無法正常工作。 'code' set/p「aj = Continue(y/n)?」 if/i「aj」==「y」(file1.bat)else(file2.bat) – ajboss
您已經嘗試過張貼複製到存儲爲ASCII/ANSI/OEM文件的文本文件中?這是不可能的,因爲這個小代碼肯定有效。也許你將文件保存爲帶或不帶BOM(字節順序標記)的Unicode文件而不是ASCII文件。或者你增加了一些不起作用的代碼。 – Mofi