Я хотел бы взять csv адресов электронной почты и найти пользователей, которые соответствуют этим адресам.Выходными данными должны быть либо сведения о найденном пользователе, либо, если соответствующему пользователю не найдена строка, в которой указывается искомый адрес электронной почты, а затем «Не найдено»
$base_path = "C:\scripts\validate_users\"
$source_file = "input_emails.csv"
$out_file = "results.csv"
#read the file, look them up
$users = Import-csv -Path ($base_path + $source_file) -delimiter ";" | ForEach {
try {
Get-ADUser -Filter "EmailAddress -eq '$($_.email)'" -Properties EmailAddress
}
catch {
"No user for" + '$_.email'
}
}
# Output the resultant collection to a csv file
$users | Export-csv -Path ($base_path + $out_file)
, что дает мне все найденные записи, и нетсообщения об ошибках.
Я бы не хотел превращать $ users в массив и добавлять туда значения.Есть ли способ добавить in-line "teredforuser@fakedomain.com NOT FOUND "в соответствии с результатами, которые я получаю сейчас.
Ввод по линиям
joesmith@ourdomain.com
janejones@ourdomain.com
freddielee@ourdomain.com
guywhoquit@ourdomain.com <== won't find this one
realuser@ourdomain.com
Прямо сейчасвывод - это просто результаты для четырех найденных пользователей без указания того, что "guywhoquit@ourdomain.com" когда-либо был в исходном списке
Извините, если это новый вопрос.Я ps newb, но я искал совсем немного, и мне не хватает, если на аналогичный вопрос уже был дан ответ.