【发布时间】:2011-09-12 12:32:36
【问题描述】:
我正在编写一个脚本,如果它不存在,它将建立一个新组。我正在使用 Get-ADGroup 使用以下命令确保该组不存在:
$group = get-adgroup $groupName -ErrorAction:SilentlyContinue -WarningAction:SilentlyContinue
但是当我这样做时,我收到以下错误(我从错误中删除了任何特定于域的数据):
Get-ADGroup : Cannot find an object with identity: '*group name*' under: '*domain*'.
At U:\Scripts\Windows\Create-FolderAccessGroup.ps1:23 char:24
+ $group = get-adgroup <<<< $groupName -ErrorAction:SilentlyContinue -WarningAction:SilentlyContinue
+ CategoryInfo : ObjectNotFound: (y:ADGroup) [Get-ADGroup], ADIdentityNot
FoundException
+ FullyQualifiedErrorId : Cannot find an object with identity: '' under: ''.,Microsoft.ActiveDirectory.Management.Commands.GetADGroup
我假设将 ErrorAction 和 WarningAction 设置为 SilentlyContinue 会阻止显示此错误,但事实并非如此。
【问题讨论】:
-
我不想将此作为答案发布,因为我不知道它是否会起作用,而且我现在无法对其进行测试,但请尝试将其传递给 Out-Null。
-
@EBGreen 所以
$group = get-adgroup $groupName | out-null? -
这就是我会尝试的方法,但正如我所说的,我不确定它是否会起作用。
-
幸好我没有把它作为答案:)
-
@EBGreen - 用于输出。例如,如果您执行
"blah" | out-null,则 blah 不会传递到管道(或控制台)与错误/异常无关。
标签: powershell active-directory