Я выполняю массовый импорт, установку или обновление attribute6 для 1000 пользователей в AD.
Для этого я использую следующий командлет Exchange:
[PS] C:\>set-mailbox -Identity user@company.com -CustomAttribute6 knruiz@nfp.com -WarningAction:SilentlyContinue -ErrorAction SilentlyContinue
Вышеупомянутая команда повторяется 1000 раз и генерируется автоматически.
Моя проблема в том, что я хочу создать список ошибок, который я могу отправить обратно вверх по течению, чтобы устранить такие ошибки, как:
Я хочу удалить следующий текст:
ПРЕДУПРЕЖДЕНИЕ. Команда выполнена успешно, но настройки «company.com/Enterprise/Users/last, first» не были изменены.
Я пробовал установить следующие -WarningAction:SilentlyContinue -ErrorAction SilentlyContinue
Кажется, что либо командлеты обмена не поддерживают это, либо, возможно, потому, что командлеты Exchange Powershell используют «удаленное взаимодействие» с заглушками, это может усложнять обработку ошибок.
Вы можете попробовать установить действие предупреждения перед запуском команды:
$oldWarningPreference = $WarningPreference
$WarningPreference = 'SilentlyContinue'
set-mailbox -Identity user@company.com -CustomAttribute6 knruiz@nfp.com -ErrorAction SilentlyContinue
$WarningPreference = $oldWarningPreference
Перезапустите сеанс оболочки, ваша команда должна работать так, как вы ожидаете. Вы могли бы попробовать -ErrorAction 0 и -WarningAction 0 но это всего лишь псевдонимы.