通过PowerShell导出Active Directory(Displayname& EmployeeID)使用Get-ADUser

时间:2016-09-02 09:33:56

标签: excel windows powershell active-directory

我想导出所有AD用户帐户列表,只有employeeid属性形成我的域,我想要排除特定的OU - 想要排除所有这些。 这是我运行的脚本,但没有运气没有运气 BTW必须是非null员工ID属性

$OUDN = "OU=Service Accounts,OU=Accounts,DC=domain,DC=tld"
Get-ADUser -Properties mail |select name,samaccountname,mail,manager,department,employeeid -Filter {Enabled -eq $true} | Where-Object { $_.DistinguishedName -notlike "*,$OUDN" }

其他代码:

$OUDN = "OU=Service Accounts,OU=Accounts,DC=domain,DC=tld"
    Get-ADUser -properties CN,Title,samaccountname,mail,displayname,manager,department,distinguishedname,employeeid  | select-object CN,Title,employeeid,mail,@{n=”PRODID”;e=”samaccountname”},DisplayName,@{n=”Manager Name”;e={(Get-ADuser -identity $_.Manager -properties displayname).DisplayName}},@{n=”ManagerID”;e={(Get-ADuser -identity $_.Manager –properties samaccountname).samaccountname}},Department -Filter {Enabled -eq $true} | Where-Object { $_.DistinguishedName -notlike "*,$OUDN" }

1 个答案:

答案 0 :(得分:1)

您的Filter参数位于错误的位置(Select-Object),它应与Get-ADUser一起使用。

Get-ADUser -properties CN,Title,samaccountname,mail,displayname,manager,department,distinguishedname,employeeid -Filter {Enabled -eq $true -and employeeID -like '*' } |
    select-object CN,Title,employeeid,mail,
        @{n=”PRODID”;e=”samaccountname”},DisplayName,
        @{n=”Manager Name”;e={(Get-ADuser -identity $_.Manager -properties displayname).DisplayName}},
        @{n=”ManagerID”;e={(Get-ADuser -identity $_.Manager –properties samaccountname).samaccountname}},
        Department  |
    Where-Object { $_.DistinguishedName -notlike "*,$OUDN" }