欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

PowerShell函数中使用必选参数实例

程序员文章站 2023-09-04 19:16:11
本文介绍在powershell创建自定义函数时,如何添加必选参数,可以使用mandatory关键词。 默认情况下,powershell自定义的函数中,参数都是可选的(op...

本文介绍在powershell创建自定义函数时,如何添加必选参数,可以使用mandatory关键词。

默认情况下,powershell自定义的函数中,参数都是可选的(optional)。如果要将一个参数设置为必选参数,那么必须对其设置mandatory声明。

复制代码 代码如下:

function test-function
{
    param(
        [parameter(mandatory=$true)]
        $p1,
        $p2='p2'
    )
    write-host "p1=$p1, p2=$p2"
}

在上面的示例函数中,参数$p1是必选参数,因为设置了mandatory=$true,而$p2没有做任何设置,默认是可选的。按照powershell函数定义的best practices,可选参数都要设置一个默认值的,这点要记住。

在调用这个函数的时候,如果我们直接运行test-function而不输入参数,系统提示我们输入p1。

复制代码 代码如下:

ps> test-function
cmdlet test-me at command pipeline position 1
supply values for the following parameters:
p1:

顺便说一下,在powershell 3.0中,[parameter(mandatory=$true)] 这句可以简写成 [parameter(mandatory)],就是说“=$true”这一部分可以省略了。能少写点肯定少写点好,但如果少写了,放到powershell 3.0之前的环境——如powershell 2.0,那就无法运行了。看来鱼与熊掌不能得兼,我们还得要懂得取舍啊!

关于powershell函数设置必选参数,本文就介绍这么多,希望对您有所帮助,谢谢!