[英]Return manager's samacountname for users
我需要為來自 AD 的所有活動用戶創建一個 CSV 文件,包括直線經理屬性,但是我需要直線經理sAMAccountName
,而不是cn
。 這是我到目前為止所擁有的:
Get-ADUser -server server_ip -Filter { mail -like "*" -and ObjectClass -eq "user" } `
-SearchBase "OU=Active Users,DC=eu,DC=ad,DC=some_company,DC=com" `
-Properties objectGUID,displayName,office,division,department,employeeNumber,
employeeID,mobilePhone,officePhone,ipphone,title,givenName,surname,mail,
manager,sAMAccountName |
Export-CSV "EU_AD_Properties.csv"
這將返回我想要的所有數據,但給我的是直線經理的cn
,而不是samacountname
。
有什么想法嗎?
我試過這個:
Get-ADUser -server server_ip -Filter { mail -like "*" -and ObjectClass -eq "user" } `
-SearchBase "OU=Active Users,DC=eu,DC=ad,DC=some_company,DC=com" `
-Properties objectGUID,displayName,office,division,department,employeeNumber,
employeeID,mobilePhone,officePhone,ipphone,title,givenName,surname,mail,
@{Label="Manager";Expression={(Get-aduser -filter {sAMAccountName -eq $_.Manager}.sAMAaccountName)}},
sAMAccountName |
Export-CSV "EU_AD_Properties.csv"
但是,這會出錯。
在這里,$user 是您要查詢經理信息的用戶
(get-aduser (get-aduser $user -Properties manager).manager).samaccountName
您不能在-Properties
參數的參數中創建自定義屬性,因為當前對象變量$_
在該點不包含值(或至少不是您想要的值)。 您需要在管道稍后的select
語句中執行此操作,此時$_
實際上保存了您需要處理的值。 您嘗試創建自定義屬性的方式也不起作用:
@{Label="Manager";Expression={(Get-aduser -filter {sAMAccountName -eq $_.Manager}.sAMAaccountName)}}
過濾器腳本塊沒有屬性sAMAccountName
。 您真正想要做的是獲取管理器 CN 的用戶對象並檢索其sAMAccountName
屬性:
@{Label='Manager';Expression={(Get-ADUser $_.Manager).sAMAccountName}}
此外,您不需要過濾器ObjectClass -eq "user"
,因為Get-ADUser
無論如何只會返回用戶對象。
所以你的管道應該是這樣的:
Get-ADUser -Server IP -Filter {mail -like "*"} -Properties * `
-SearchBase "OU=Active Users,DC=eu,DC=ad,DC=some_company,DC=com" |
select objectGUID, displayName, office, division, department, employeeNumber,
employeeID, mobilePhone, officePhone, ipphone, title, givenName, surname,
mail, @{Name='Manager';Expression={(Get-ADUser $_.Manager).sAMAccountName}},
sAMAccountName |
Export-CSV "EU_AD_Properties.csv"
Get-ADUser -Filter * -Properties Name,SamAccountName,AccountExpirationDate,Manager | select Name,SamAccountName,AccountExpirationDate,@{N='Manager';E={(Get-ADUser $_.Manager).sAMAccountName}} | Export-Csv "Userdata.csv"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.