Я должен выполнить цикл для каждого объекта во входном файле, выполняя Get-ADUser для каждого объекта, и я хочу обработать ошибку ADIdentityNotFoundException без остановки цикла.Есть ли лучший способ, которым я могу сделать это (упрощено ради примера):
Import-Csv $input | Foreach-Object {
$manager = "BLANK"
if ($user = Get-ADUser $_."samaccountname" -properties * ) {
# I don't think I need this in an IF{} since the line below won't work
# so $manager will be equal to the last value set, "BLANK", but
# this makes it easier to understand what I want to happen
$manager = $user."manager"
# I need more properties (thus -properties *) but again just an example
}
}
По сути, если поиск Get-ADUser успешен, установите $manager = $user."manager"
Если этоне удалось, не останавливайте цикл, не копируйте значение предыдущего пользователя, введите $manager = "BLANK"
(или что-либо еще).Проблема, с которой я столкнулся с решениями try / catch, заключается в том, что ADIdentityNotFoundException
не запускает перехват, если я не добавлю -ErrorAction Stop
, что приведет к нежелательному результату завершения программы.