PowerShell 3.0 中方便的参数属性


在PowerShell 2.0 中给一个函数的参数定义“强制性”属性,如果在调用时,没有传入参数,PowerShell会以交互的方式提示用户输入,例如:

function Sum
{
   param
   (
    [Parameter(Mandatory=$true)]$num1
   )
   Write-Host $num1
}
Sum

控制台会提示:

PS F:\> F:\MyScript.ps1
位于命令管道位置 1 的 cmdlet Sum
请为以下参数提供值:
num1: 1010
1010
PS F:\>

但是在PowerShell 3.0 中,这些属性已经具备了默认值$true了,所以可以直接这样定义:

function Sum
{
   param
   (
    [Parameter(Mandatory)]$num1
   )
   Write-Host $num1
}

原文链接:http://powershell.com/cs/blogs/tips/archive/2012/10/03/easier-parameter-attributes-in-powershell-v3.aspx

本文链接: https://www.pstips.net/easier-parameter-attributes-in-powershell-v3.html
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!

关于 Mooser Lee

我是一个Powershell的爱好者,创建了PowerShell中文博客,热衷于Powershell技术的搜集和分享。本站部分内容来源于互联网,不足之处敬请谅解,并欢迎您批评指正。

发表评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注