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 次浏览

开启您的 职业生涯

完成课程获得认证

开始学习
广告
© . All rights reserved.