Значение параметра PowerShell по умолчанию не работает должным образом
#Requires -Version 2.0
[CmdletBinding()]
Param(
[Parameter()] [string] $MyParam = $null
)
if($MyParam -eq $null) {
Write-Host 'works'
} else {
Write-Host 'does not work'
}
Вывод "не работает" => выглядит как строки неявно преобразуются из пустой строки в пустую? Зачем? И как проверить, является ли строка пустой или действительно $ null? Это должно быть два разных значения!