我在下面具有powershell功能
Function Test
{
Param
(
[Parameter()]
[string]$Text = "default text"
)
Write-Host "Text : $($Text)"
}
而且我希望能够像下面这样调用此函数:
Test -Text:应在主机上显示默认文本
Test -Text“另一个文本”:应在主机上显示提供的文本
我的问题是,powershell中不允许使用第一种语法。
关于如何实现此目标的任何想法?我想要一种'switch'参数,该参数可以采用布尔值以外的其他值。
谢谢
您遇到的问题在于参数集。 PowerShell将[string] $Text
视为Default
参数集,并期望如果您要传递-Text
参数,它将被提供一个值。您可以这样解决:
只需在文本中输入变量,就像这样: