批處理函數

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

像其他語言一樣,批處理腳本中的函數也遵循相同的程序規則 -

  • 函數聲明 - 它告訴編譯器一個函數的名字,返回類型和參數。
  • 函數定義 - 它提供了函數的實際主體。

函數定義

在批處理腳本中,通過使用標籤語句來定義函數。 當一個函數被重新定義時,它可能會將一個或多個值作爲函數的輸入「參數」,並在函數的主體中處理,並將值作爲輸出「返回類型」傳回給函數。

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

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

: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命令。