Я только начинаю погружаться в PowerShell с AD, поэтому извиняюсь, если вопрос кажется очевидным.
Я пытаюсь проверить, находится ли какое-либо из устройств, представленных в списке, в AD. До сих пор я использовал код из:
Powershell - убедитесь, что объект существует в AD
Работает просто отлично, но "-ErrorAction SilentlyContinue" фактически не подавляет сообщения об ошибках. Я получаю ниже:
Get-ADComputer: не удается найти объект с идентификатором: 'test' в:
"DC = тест, DC = дом.
В C: \ Users \ testaccount \ Desktop \ test.ps1: 171
символ: 19
+ if (@ (Get-ADComputer $ target -ErrorAction SilentlyContinue) .Count)
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo: ObjectNotFound: (тест: ADComputer) [Get-ADComputer], ADIdentityNotFoundException
+ FullyQualifiedErrorId: ActiveDirectoryCmdlet: Microsoft.ActiveDirectory.Management.ADIdentityNotFoundException, Microsoft.ActiveDirectory.Management.Commands.GetADComputer
Код, который я использую, выглядит следующим образом:
foreach ($target in $devicelist)
{
if (@(Get-ADComputer $target -ErrorAction SilentlyContinue).Count)
{
$existingdevices += $target
}
else
{
#display error notification
}
}
То, что я ищу, это подавление сообщения об ошибке, чтобы оно больше не отображалось в консоли, - чтобы скрипт фактически продолжал молча при ошибке.
Любая помощь будет оценена по достоинству!