#Requires -Version 2.0
[CmdletBinding()]
Param(
[Parameter()] [string] $MyParam = $null
)
if($MyParam -eq $null) {
Write-Host 'works'
} else {
Write-Host 'does not work'
}
输出“不起作用”=> 看起来字符串从 null 隐式转换为空字符串?为什么?以及如何测试一个字符串是空的还是真的 $null?这应该是两个不同的值!