批次腚本 - 決策製定

批次腚本中決策製定的介紹

你好啊,有志者們!今天,我們將要進入批次腚本的決策製定這個令人興奮的世界。作為你們親切友善的電腦老師,我將帶領你們透過大量的範例和一點幽默,開始這趟旅程。所以,請繫好安全帶,我們開始吧!

Batch Script - Decision Making

決策製定就像選擇要吃哪種口味的冰淇淋一樣——這全是關於基於某些條件來做選擇。在批次腚本中,我們使用這些決策來使我們的腚本更聰明、更靈活。

IF 語句:你的第一個決策製定者

基本的 IF 語句

IF 語句是批次腚本中決策製定的基礎。這就像你代碼的紅綠燈——它告訴你的腚本何時前行,何時停止。

我們從一個簡單的範例開始:

@echo off
IF EXIST "C:\MyFile.txt" echo 檔案存在!

在這個腚本中,我們正在檢查 C: 驅動器上是否存在名為 "MyFile.txt" 的檔案。如果存在,我們會打印 "檔案存在!" 。就是這麼簡單!

IF-ELSE 語句:兩條路線可供選擇

現在,我們在 IF 語句中加入 ELSE 子句。這就像有個備用計劃:

@echo off
IF EXIST "C:\MyFile.txt" (
echo 檔案存在!
) ELSE (
echo 檔案不存在!
)

在這裡,如果檔案不存在,我們會看到 "檔案不存在!" 的訊息。這就像問:"冰箱裡有披薩嗎?如果有,就吃掉它;如果沒有,訂一個!"

比較運算符:決策製定的工具箱

當我們做決策時,我們常常需要比較事物。在批次腚本中,我們有幾個比較運算符來幫助我們。這裡有一個這些運算符的便捷表格:

運算符 說明
EQU 等於
NEQ 不等於
LSS 小於
LEQ 小於或等於
GTR 大於
GEQ 大於或等於

我們在範例中使用它們:

@echo off
SET /A age=25
IF %age% GEQ 18 (
echo 你是個成年人!
) ELSE (
echo 你還是個未成年人。
)

在這個腚本中,我們正在檢查年齡是否大於或等於 18。如果是,我們宣稱這個人為成年人。這就像你代碼的虛擬保鏢!

GOTO 語句:在腚本中跳來跳去

有時候,你需要根據決策跳到你腚本的不同部分。這時 GOTO 語句就派上用場了。這就像你代碼的傳送門!

@echo off
SET /P choice=輸入 1 為 Hello,2 為 Goodbye:
IF %choice%==1 GOTO hello
IF %choice%==2 GOTO goodbye
GOTO end

:hello
echo Hello, World!
GOTO end

:goodbye
echo Goodbye, World!
GOTO end

:end
echo 腚本結束!

這個腚本詢問使用者做出選擇,然後使用 GOTO 跳到適當的部分。這就像一本 "選擇你自己的冒險" 書,但以代碼形式呈現!

嵌套的 IF 語句:決策中的決策

有時候,一個決策不夠。我們需要基於其他決策的結果來做決策。這時候就需要嵌套的 IF 語句:

@echo off
SET /P age=輸入你的年齡:
IF %age% GEQ 18 (
IF %age% LSS 65 (
echo 你是個工作年齡的成年人。
) ELSE (
echo 你是個老年公民。
)
) ELSE (
echo 你還是個未成年人。
)

這個腚本根據年齡對人進行分類,使用嵌套的 IF 語句。這就像決策製定的俄羅斯套娃!

Choice 指令:互動式決策製定

CHOICE 指令讓我們能夠為使用者輸入創建互動菜單。這就像在你腚本中創建一個多選題測驗:

@echo off
ECHO 什麼是你最喜歡的颜色?
ECHO 1. Red
ECHO 2. Blue
ECHO 3. Green
CHOICE /C 123 /N /M "輸入你的選擇 (1-3):"
IF ERRORLEVEL 3 ECHO 你選擇了 Green
IF ERRORLEVEL 2 ECHO 你選擇了 Blue
IF ERRORLEVEL 1 ECHO 你選擇了 Red

這個腚本展示了一個菜單,並根據使用者的選擇做出反應。這就像個能讀心的人,但用代碼實現!

結論

好了,各位!我們已經一起走過了批次腚本的決策製定這片土地。從簡單的 IF 語句到複雜的嵌套條件,你現在有了讓你的腚本更聰明、更具互動性的能力。

記住,熟能生巧。試著使用這些技術創建你自己的腚本。也許創建一個根據星期幾來決定吃什麼晚餐的腚本?可能性是無窮的!

快樂腚本編寫,願你的決策總能導向無 bug 的代碼!

Credits: Image by storyset