【发布时间】:2022-11-16 06:35:05
【问题描述】:
首先,如果之前有人问过这个问题,我深表歉意,但我尝试搜索却一无所获。
我正在 PS 中为 HR 编写一个脚本,通过该脚本将用户详细信息从 AD 提取到 .csv,并且我正在努力提取用户经理的 EmployeeID。
在此要求之前,他们使用电子邮件地址作为每位员工/经理的唯一标识符,但现在他们需要经理的唯一 ID。
这是旧脚本的 sn-p,可以正常工作并提取经理的电子邮件,如果可能的话,我想提取经理的 EmployeeID,并将其添加到“批准者”列中。
@{Label = "email";Expression = {$_.EmailAddress.ToLower()}},
@{Label = "first_name";Expression = {$_.GivenName}},
@{Label = "last_name";Expression = {$_.Surname}},
@{Label = "approver";Expression = {%{(Get-AdUser $_.Manager -server $ADServer -Properties EmailAddress).EmailAddress.ToLower()}}},
@{Label = "approver2";Expression = {""}},
@{Label = "leaving_date";Expression = {""}},
@{Label = "job_title";Expression = {$_.Title}},
任何帮助将不胜感激,因为它让我发疯。
谢谢!
【问题讨论】:
-
看起来您已经查询了经理的 AD 对象 (
$_.Manager),无需再次查询,只需将此计算属性之前的代码添加到您的问题中 -
你是对的,我正在查询经理 AD 对象,但上面的代码获取了他们的电子邮件地址,我不确定如何更改它以获取他们的“EmployeeID”。我对他们的电子邮件没有问题,但我似乎无法提取他们的 ID。
-
我猜像
-Properties EmployeeID -
我试过那个,它返回:CN=Users Name,OU=XXXXXXX,OU=XXXXXXXX,OU=XXXXXXXXX,DC=XX instead of the ID
-
查询的右侧类似于
-Properties EmployeeID).EmployeeID
标签: powershell active-directory