我目前正在嘗試查找使用模型「[email protected]」創建的所有AD用戶與我們的新標準「[email protected]」。我使用任務ActiveRoles模塊,具體Get-QADUser
拉下我的用戶信息:Powershell - 將Active Directory用戶名與電子郵件地址進行比較
Get-QADUser -enabled -IncludedProperties PrimarySMTPAddress | ?{$_.Type -match "User"} | Select-Object FirstName,PrimarySMTPAddress ...
這讓我的用戶名字的名單和他們的SMTP地址。我被困在哪裏是如何比較結果。
我認爲規範化的價值(要麼從第一個名稱字符串添加「@ domain.com」或從SMTP字符串剝離「@ domain.com」),然後執行-ieq測試將是最好的方法。我發現我能做到先用:
%{ $address=$($_.FirstName + "@domain.com";) }
但我想不出反對PrimarySMTPAddress字符串,如何在測試$地址。我可以創建一個第二個變量:
%{ $smtp=$($_.PrimarySMTPAddress); }
並得到結果:
[PS] C:\>$addy -ieq $smtp
True
我只是不清楚如何做到這一切的流,這樣我可以一次處理我的樹。如果這是更適合腳本而不是單行的東西,那也沒關係。來自BASH的光榮世界,我的大腦只是想把它變成一條線。
它就在那裏,就這麼簡單。我所有使用分裂的嘗試都失敗了。謝謝! – Christian