【发布时间】:2016-09-10 04:29:57
【问题描述】:
好的 - 所以我工作的公司已经买断了很多域名。每个域都有不同的命名模式。 (例如:john.smith、jsmith) - 当我们终止某人时,我想自动禁用他们在每个域中的帐户。
在我在 where-object cmdlet 中添加“或”语句之前,此脚本运行良好。
$user1 = "John.smith"
$user2 = "Jsmith"
get-aduser -Filter * | Where-Object {{$_.samaccountname -eq "$User1"} -or {$_.samaccountname -eq "$user2"}}
如果我取出 or 语句 - 它会找到用户。如果我放入 or 语句,它只会返回我域中的每个用户。
我也尝试避免使用 -or,并使用 if,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 语句错误 - 但为什么没有错误?
谢谢你,
【问题讨论】:
标签: powershell