【发布时间】:2017-05-26 15:25:07
【问题描述】:
$Results = @()
$Users = Import-CSV C:\Filter\test1.CSV -Header First,Last,Email
Foreach($User in $Users){
$UserProps = get-aduser -Filter "GivenName -eq '$($user.GivenName)' -and Surname -eq '$($user.Surname)'" -Properties GivenName,Surname,EmailAddress,Department
$Results += New-Object PSObject -Property @{
FirstName = $User.GivenName
LastName = $User.Surname
EmailAddress = $User.EmailAddress
Department = $UserProps.Department}
}
$Results
这是 test1.CSV 3 列包括:
第一个最后一个电子邮件
韦斯特利 XXX email@email.gov
戴夫 XXX email@email.gov
加雷斯 XXX email@email.gov
保罗 XXX email@email.gov
我想要它做的是通过 CSV 运行并从 PowerShell 中提取活动帐户信息,但是我不认为它这样做,因为我的名字应该打印出其他东西
它应该打印出 DavidJ 作为测试,因为我已经编辑了我的帐户,而是打印出 Dave 作为我的名字,它在电子表格 (CSV) 中的样子。
get-aduser : 无法识别搜索过滤器 在行:2 字符:18 + $UserProps = get-aduser -Filter "GivenName -eq '$($user.GivenName)' -and Sur ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: (:) [Get-ADUser], ADException + FullyQualifiedErrorId : ActiveDirectoryServer:8254,Microsoft.ActiveDirectory.Management.Commands.GetADUser
预期输出:
电子邮件地址名字部门姓氏
------------ --------- ---------- --------
westley@email.gov westley mydepartment hislastnamefromAD
david@email.gov davidj(来自 AD)mydepartment mylastnamefromAD
gareth@gmail.gov gareth mydepartment hislastnamefromAD
paul@gmail.com paul mydepartment hislastnamefromAD
【问题讨论】:
标签: powershell