PowerShell 函式詳解


PowerShell 中的函式用於減少重複程式碼。這意味著將重複的程式碼繫結到一個函式中,並在需要時呼叫該函式,這樣就不需要多次編寫相同的程式碼。

示例

假設您想對兩個值 5 和 4 執行算術運算(乘法、加法、除法和減法),您可以為這兩個值編寫不同的運算,或者您可以將值賦給名為 $val1$val2 的變數,然後對它們執行各種運算,如下例所示。

$val1 = 5
$val2 = 4

$val1 * $val2
$val1 + $val2
$val1 / $val2
$val1 - $val2

現在,假設值再次更改,例如 20 和 10,您需要更改變數的值並再次編寫整組命令。PowerShell 函式在這裡起著至關重要的作用。因此,重複的程式碼可以寫入函式中。

在開始我們的第一個示例之前,我們先看看語法。

function FunctionName(Parameter1, Parameter2,.....,ParameterN) {
   //Operation commands
   // Conditions
}

在下面的示例中,我們給出了一個名為 math_operation 的函式,它執行兩個變數的所有運算。程式碼如下所示。

示例

function math_Operation{
   $val1 = 10
   $val2 = 5
   Write-Host "Multiply : $($val1*$val2)"
   Write-Host "Addition : $($val1+$val2)"
   Write-Host "Subtraction : $($val1-$val2)"
   Write-Host "Divide : $($val1+$val2)"
}
math_Operation

要呼叫此函式,只需按名稱呼叫即可,如示例所示。

輸出

Multiply : 50
Addition : 15
Subtraction : 5
Divide : 15

當您編寫函式並執行指令碼後,您也可以在 PowerShell 控制檯中使用函式名稱呼叫該函式。在這裡,您需要在指令碼執行後在終端中輸入 math_operation

現在,要多次使用該函式,您只需將這兩個值傳遞給該函式,以便可以對它們進行運算。為此,我們在函式內部使用 Param 塊(指的是引數)並在其中宣告變數。

示例

function math_Operation{
   param([int]$val1,[int]$val2)
   Write-Host "Multiply : $($val1*$val2)"
   Write-Host "Addition : $($val1+$val2)"
   Write-Host "Subtraction : $($val1-$val2)"
   Write-Host "Divide : $($val1+$val2)"
}

在 PowerShell 控制檯中執行上述程式碼,您可以在終端中看到可以使用兩個值($val1 和 $val2)作為引數。因此,每次都需要傳遞兩個值來計算結果。

輸出

PS E:\scripts\Powershell> math_Operation -val1 20 -val2 10
Multiply : 200
Addition : 30
Subtraction : 10
Divide : 30

應避免為函式使用標準 cmdlet 名稱。

更新於:2020年4月17日

804 次瀏覽

開啟您的 職業生涯

完成課程獲得認證

開始學習
廣告