命令匹配的测试结果为 false 或 true
Test result of command match with false or true
我正在根据命令的结果寻找 returns $true
或 $false
的函数。
有点像这样:
Function Get-ChPwd ([string] $sam) {
$x = Get-ADUser -Identity $sam -Properties CannotChangePassword |
Select-Object -ExpandProperty CannotChangePassword
if( $x -match "False") {
return $false
} else {
return $true
}
}
属性 已经有一个布尔值,因此您可以简单地 return 该值。不过,我会推荐一个不同的函数名称,因此它符合 naming conventions.
Function Test-CannotChangePassword([string]$sam) {
Get-ADUser -Identity $sam -Properties CannotChangePassword |
Select-Object -ExpandProperty CannotChangePassword
}
请注意,如果不存在具有该身份的用户,这将引发错误。如果你想 return $false
而不是在这种情况下抛出错误,请使用 -Filter
而不是 -Identity
并将结果转换为 bool:
Function Test-CannotChangePassword([string]$sam) {
[bool](Get-ADUser -Filter "SamAccountName -eq '$sam'" -Properties CannotChangePassword |
Select-Object -ExpandProperty CannotChangePassword)
}
我正在根据命令的结果寻找 returns $true
或 $false
的函数。
有点像这样:
Function Get-ChPwd ([string] $sam) {
$x = Get-ADUser -Identity $sam -Properties CannotChangePassword |
Select-Object -ExpandProperty CannotChangePassword
if( $x -match "False") {
return $false
} else {
return $true
}
}
属性 已经有一个布尔值,因此您可以简单地 return 该值。不过,我会推荐一个不同的函数名称,因此它符合 naming conventions.
Function Test-CannotChangePassword([string]$sam) {
Get-ADUser -Identity $sam -Properties CannotChangePassword |
Select-Object -ExpandProperty CannotChangePassword
}
请注意,如果不存在具有该身份的用户,这将引发错误。如果你想 return $false
而不是在这种情况下抛出错误,请使用 -Filter
而不是 -Identity
并将结果转换为 bool:
Function Test-CannotChangePassword([string]$sam) {
[bool](Get-ADUser -Filter "SamAccountName -eq '$sam'" -Properties CannotChangePassword |
Select-Object -ExpandProperty CannotChangePassword)
}