所以我遇到了一些麻烦,我有一个带有电子邮件地址的大型CSV文件,我正在尝试搜索AD以获取相关的用户信息。
此CSV中的某些电子邮件没有匹配的AD对象(例如noreply@xy.com)但是我需要将它们保存在此文件中,我还希望相关的AD数据在正确的行上
现在我的脚本获取了我想要的所有信息,但是当没有找到用户信息时,它还会删除空行,有什么想法吗?
Import-Csv C:\temp\myfile.csv | ForEach-Object {Get-Aduser -Filter "EmailAddress -eq '$(
$_.SenderAddress)'" -Properties *} | Select SamAccountName, Name, Company
答案 0 :(得分:0)
这样的事情怎么样?我添加了您要发送的电子邮件地址,以便将搜索结果作为遗失的占位符。
Import-Csv "C:\temp\myfile.csv" | % { if($ad = Get-ADUser -Filter "EmailAddress -eq '$($_.SenderAddress)'" -Properties EmailAddress, Company){$ad}else{New-Object PSObject -Property @{"EmailAddress" = $($_.Email); "SamAccountname" = $Null; "Company"=$Null}} } | Select EmailAddress, SamAccountName, Name, Company