繁体   English   中英

Powershell:如何将布尔值传递给函数参数?

[英]Powershell: How to pass Boolean Value into Function Parameter?

我在 Powershell 中创建了一个函数,并希望将参数-Foo作为布尔值传递。

我已经简化了我的可视化用例:

function Get-Foobar {

    [CmdletBinding()]
    param (
        [bool]$Foo
    )

    if ($Foo) {
        Write-Host "Foo!"
    }
    else {
        Write-Host "Bar!"
    }
}

当我调用函数Get-Foobar -Foo $true时,该函数按预期工作。 但这不是我想要的。 只需Get-Foobar -Foo就足够了。

参考文档,在调用函数时指定参数应该已经返回true。 但显然这行不通。

您正在寻找Switch 参数

开关参数是没有参数值的参数。 来源。

例子:

Param(
    [Parameter(Mandatory=$false)]
    [Switch]
    $Foo
)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM