我可以使用Add-LocalGroupMember将用户添加到本地组:
Add-LocalGroupMember -Group "Administrators" -Member "foobar"
Run Code Online (Sandbox Code Playgroud)
但它不是幂等的。如果用户已存在,则会收到此错误
Add-LocalGroupMember : foobar 已经是组管理员的成员
当您想重复运行此命令时,使此命令不会出错的最佳方法是什么?
原因是这是 Octopus 部署的一部分,我不想对如此简单的事情使用预烘焙步骤。
您可以将包装器简化为 try/catch 块。此示例仅在成员已存在时捕获,因此您仍然可以评估和处理其他错误。
try {
Add-LocalGroupMember -Group $group -Member $member -ErrorAction Stop
} catch [Microsoft.PowerShell.Commands.MemberExistsException] {
Write-Warning "$member already in $group"
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6697 次 |
| 最近记录: |