我正在尝试编写一个脚本,我可以运行该脚本来动态管理AD安全组中的计算机。我已经成功地完成了第一部分,但希望它能做一些补充。到目前为止,我有:
$computers = Get-ADComputer -Filter * -Searchbase "OU=Clients,OU=Devices,DC=domain,DC=local" | select-object -expandproperty DistinguishedName | out-file C:\computers.txt
Get-Content c:\computers.txt | Add-ADPrincipalGroupMembership -MemberOf 'Group_C'
我想排除已经与Group_A和Group_B发生冲突的计算机,如果它们不再出现在computers.txt中,则将它们从C组中删除
答案 0 :(得分:0)
以下内容将排除Group_A和Group_B中的计算机:
$GroupA_DN = "<GroupA DistinguishedName>"
$GroupB_DN = "<GroupB DistinguishedName>"
Get-ADComputer -filter {memberof -ne $GroupA_DN -and memberof -ne $GroupB_DN}
$GroupA_DN
变量将需要具有A组可分辨名称的字符串。例如,$GroupA_DN = "CN=Group_A,OU=SomeOU,OU=Clients,OU=Devices,DC=domain,DC=local"
。对于B组,需要在其各自的变量中重复相同的操作。