Ich bin beauftragt, ein Skript zu erstellen, die die folgende Aufgabe ausführen kann. Beispiel: Wir haben ein Domain-ABC.Powershell - Überprüfen Sie mehrere Benutzer und schließen Sie doppelte Benutzer und add count
Es gibt 4 Sicherheitsgruppen, genannt A, B, C und D.
Peter ist Mitglied der A- und B-Gruppe. David ist Mitglied der B- und C-Gruppe. John ist Mitglied einer Gruppe. B-Gruppe ist auch ein Mitglied Eine Gruppe.
Wir möchten die Gesamtzahl der Benutzer in A, B-Gruppen finden. Die Benutzer, die bereits in der Gruppe sind, werden in der Zählung ausgeschlossen. Auf der Basis von oben zeigt das Skript eine Gesamtanzahl von A & B = 3 Benutzern anstelle von 5 Benutzern. Ich habe versucht, an einem Skript zu arbeiten, das den Benutzer in A- und B-Gruppen zählt und auch jede Gruppe in A- und B-Gruppe. Wenn sich John in A und B befindet, fügt das Skript nur 1 Anzahl hinzu. Auch wenn David in der B-Gruppe, aber nicht in der Gruppe A ist, wird 1 Zählung hinzugefügt.
Bearbeiten: nach der Änderung des Codes mit Ihnen helfen, es gibt keinen Fehler. Das angezeigte Ergebnis ist jedoch leer.
$groups = $A_group, $B_Group
$gm = @()
foreach ($group in $groups) {
$gm += Get-ADGroupMember $group |
where {$_.objectclass -eq 'user'} |
select SamAccountName
}
($gm.samaccountname | Select -Unique).Count
Write-Output $total = ($gm.samaccountname | Select -Unique).Count
wo definieren Sie Ihre $ Gesamtvariable? – guiwhatsthat
Wie * genau * hat der Code "nicht funktioniert"? Was war das erwartete Ergebnis? Was war das tatsächliche Ergebnis? Hast du Fehler bekommen? Was haben sie gesagt? –
'$ total = ($ gm.samaccountname | Select -Unique) .Count; Write-Output $ total' –