批次處理函式


函式是組織在一起執行特定任務的一組語句。 在批次處理指令碼中,採用類似的方法將邏輯語句組合在一起形成一個函式。

像其他語言一樣,批次處理指令碼中的函式也遵循相同的程式規則 -

  • 函式宣告 - 它告訴編譯器一個函式的名字,返回型別和引數。
  • 函式定義 - 它提供了函式的實際主體。

函式定義

在批次處理指令碼中,通過使用標籤語句來定義函式。 當一個函式被重新定義時,它可能會將一個或多個值作為函式的輸入「引數」,並在函式的主體中處理,並將值作為輸出「返回型別」傳回給函式。

每個函式都有一個函式名稱,它描述了函式執行的任務。 要使用一個函式,需要用它的名稱來「呼叫」這個函式,並傳遞與函式引數型別相匹配的輸入值(稱為引數)。

以下是一個簡單函式的語法。

:function_name 
Do_something 
EXIT /B 0

其中,

  • function_name是賦予函式的名字,它應該與函式的實際功能相匹配。
  • EXIT語句用於確保函式正常退出。

以下是一個簡單函式的例子。

:Display 
SET /A index=2 
echo The value of index is %index% 
EXIT /B 0

常見的函式使用,如下列表所示 -

編號 函式 描述
1 呼叫函式 在批次處理指令碼中如何使用call命令呼叫一個函式
2 帶引數的函式 當函式呼叫時,函式可以通過傳遞引數來處理引數。
3 具有返回值的函式 函式可以通過傳遞變數名稱來處理返回值
4 函式中的區域性變數 函式中的區域性變數可以用來避免名稱衝突,並保持函式原生的變數變化。
5 遞回函式 通過在函式中保持區域性變數的變化並且對呼叫者不可見,完全封裝函式主體的能力。
6 檔案I/O 在批次處理指令碼中,可以執行任何程式設計語言中預期的正常檔案I/O操作。
7 建立檔案 新檔案的建立是通過重定向過濾器>來完成的。 此過濾器可用於將任何輸出重定向到檔案。
8 寫入檔案 內容寫入檔案也是借助於重定向過濾器來完成的。 此過濾器可用於將任何輸出重定向到檔案。
9 附加到檔案 內容寫入檔案也是在雙重定向過濾器的幫助下完成的。 此過濾器可用於將任何輸出附加到檔案。
10 從檔案讀取 在批次處理指令碼中讀取檔案是通過使用FOR迴圈命令來完成檔案中需要讀取的每一行。
11 刪除檔案 要刪除檔案,批次處理指令碼提供了DEL命令。
12 重新命名檔案 要重新命名檔案,批次處理指令碼提供了RENRENAME命令。
13 移動檔案 要移動檔案,批次處理指令碼提供MOVE命令。
14 批次處理檔案-管道 管道運算子(豎線)將一個命令的輸出(預設為STDOUT)引導到另一個命令的輸入(預設為STDIN)。
15 批次處理檔案-輸入 批次處理檔案執行時,可以選擇傳遞命令列引數,然後在程式中讀取這些引數以進一步處理。
16 使用SHIFT運算子 命令列引數的一個限制是它只能接受直到%9的引數。
17 檔案夾操作 在批次處理指令碼中,可以使用任何程式設計語言執行普通的基於檔案夾的操作。
18 建立檔案夾 建立一個檔案夾是在MD(建立目錄)命令的幫助下完成的。
19 列出檔案夾內容 檔案夾內容的列表可以用dir命令完成。 該命令用來檢視當前目錄中的可用檔案和目錄。
20 刪除檔案夾 要刪除檔案夾,可使用批次處理指令碼提供的DEL命令。
21 重新命名檔案夾 對於重新命名檔案夾,批次處理指令碼使用RENRENAME命令。
22 移動檔案夾 對於移動檔案夾,批次處理指令碼提供MOVE命令。