如何在powershell脚本中获取命名参数的数量?

dus*_*ntp 3 powershell

即 ABC.ps1有这个

param(
[bool]$A= $False,
[bool]$B= $False,
[bool]$C= $False
)

$count=$Args.Count
Write-Host "$count"
Run Code Online (Sandbox Code Playgroud)

如果我把它称为:.\ ABC.ps1 $ True $ True $ True它应该显示3.

这只是一个猜测,但$ Args.Count始终为零,可能是因为Args不保存/计算命名参数.

mjo*_*nor 7

命名参数的数量可以从$ psboundparameters获得

&{param(
[bool]$A= $False,
[bool]$B= $False,
[bool]$C= $False
)
$psboundparameters | ft auto
$psboundparameters.count
} $true $true $true

Key Value
--- -----
A    True
B    True
C    True


3
Run Code Online (Sandbox Code Playgroud)

$ arg确实只包含未绑定的参数.