1
好吧 - 所以我工作的公司买了不少的域名。每个域都有不同的命名模式。 (例如:john.smith,jsmith) - 当我们终止某人时,我想在每个域中自动禁用他们的账户。Where-object-or not working
此脚本工作得很好,直到我在where-object cmdlet中添加'或'语句。
$user1 = "John.smith"
$user2 = "Jsmith"
get-aduser -Filter * | Where-Object {{$_.samaccountname -eq "$User1"} -or {$_.samaccountname -eq "$user2"}}
如果我拿出或语句 - 它找到用户。如果我放入或声明,它只会返回我的域中的每个用户。
我也试着避免-or,并用如果else语句去:
$user1 = "john.smith"
$user2 = "jsmith"
$result = Get-ADUser -filter * | Where-Object {$_.samaccountname -eq "$user1"}
if($result = $error) {Get-ADUser -Filter * | Where-Object {$_.samaccountname -eq "$user2"}}
这不会返回一个错误 - 它只是不返回任何东西(可能会做的if语句错误 - 但为什么没有错误
谢谢
好的 - 工作。奇怪,因为我已经看到了在向对象之前添加多个参数的双括号。我猜这是糟糕的形式。非常感谢。 –