[英]Get AD users’ manager and primary group that is associated with a user's manager
我是 PowerShell 脚本的新手。 我正在尝试将用户的经理数据从 AD 导出到 csv 文件。 我创建了一个 PowerShell 脚本,用于从 AD 获取用户的经理数据,如下所示:
name, samaccountName, email address
以及与经理及其管理的用户相关联的主要组。
我在代码中导入一个user.csv
文件来检索管理器数据,然后将数据导出到user_manager.csv
。 我的代码不起作用。 你能帮我么?
这是导入文件user.csv
:
id userid groups
-----------------------------
1 fiyx f0302
2 bise acct
3 misye d4029
4 suew sales
这是代码:
Import-Csv -Path "\tmp\user.csv" |
$user = Get-ADUser -Identity $_.userid -Properties manager
$group = Get-ADGroup -Identity $_.group.userid -Properties groups
$_ | Add-Member -MemberType NoteProperty -Name 'Manager' -Value $manager.Name
$manager = Get-ADUser -Identity $user.Manager -Properties samaccountname, displayName, mail
$_
} | Export-CSV -Path "C:\tmp\manager_user.csv" –NoTypeInformation
下面是我想在 user_manager.csv 中看到的结果:
userid groups manager samaccountname mail
---------------------------------------------------------------------------
fiyx f0302 Brian Lee brinle brian.lee@creek.com
bise acct Susan Brisky Susbri susan.brisky@creek.com
misye d4029 Mary Louname marloun mary.louname@creek.com
suew sales Wuson Tacos wusta wuson.tacos@creek.com
请始终将您遇到的错误添加到帖子中,这样我们就无法猜测问题可能发生在哪里。 我没有在第一行的末尾拿到管道。 有时循环有助于使脚本更具可读性。 这应该有效:
$data = Import-Csv -Path "\tmp\user.csv"
foreach ($entry in $data){
$user = Get-ADUser -Identity $entry.userid -Properties manager
$manager = Get-ADUser -Identity $user.Manager -Properties samaccountname, displayName, mail
$entry | Add-Member -MemberType NoteProperty -Name 'Manager' -Value $manager.Name
$entry | Add-Member -MemberType NoteProperty -Name 'samaccountname' -Value $manager.samaccountname
$entry | Add-Member -MemberType NoteProperty -Name 'mail' -Value $manager.mail
}
$data | Export-CSV -Path "C:\tmp\manager_user.csv" –NoTypeInformation
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.