none
Auslesen von Gruppen und deren User. RRS feed

  • Frage

  • Hey Leute,

    mein Ziel ist es, in einer Textdatei die Gruppen aufzulisten, bei denen die Mitglieder untendrunter stehen. Beispiel:

    Gruppe1

    User1
    User2
    User3

    ----------------------

    Gruppe2

    User1
    User3
    User4

    Aber er mal meine Zeile 30 nicht....weiß jemand warum? Habe schon alles mögliche probiert.

    Donnerstag, 13. Oktober 2016 08:27

Antworten

  • Hallo ,

    Schau dir mal in der Build In Hilfe die Beispiele zu Get-ADGroup an, da sieht man ganz gut, wie man mit dem Filter umgeht. Hier ist mal ein Ansatz, wie du deine Gruppenmitglieder in eine txt schreiben kannst.

    $Path = 'C:\test.txt'
    
    New-Item -Path $Path -ItemType File -Force
    
    # Zum Finden der Gruppe eine der beiden Abfragen nehmen.
    
    $Groups= Get-ADGroup -Filter  'Name -Like "$Group1"'
    
    $GroupName= "Group1" 
    $groups = Get-ADGroup $GroupName
    
    
    #Schleife damit alles Untereinander Steht und in die txt Datei geschrieben wird. 
    
    foreach($group in $groups){
    
    
    
    $member = (Get-ADGroup $group | Get-ADGroupMember).name | out-string
    $name = $group.Name
    Add-Content -Path $Path -Value "Grupenname $Groupname"
    Add-Content -Path $Path -Value $member
    Add-Content -Path $Path -Value "--------------"
    
    }

    Es geht sicherlich hübscher, es ist ein Ansatz für dich.

    Grüße Andy

    Freitag, 14. Oktober 2016 07:04

Alle Antworten

  • > Aber er mal meine Zeile 30 nicht....weiß jemand warum? Habe schon alles
    > mögliche probiert.
     
    "mag nicht" ist ein wenig unspezifisch... Fehlermeldung?
    Und bei -Filter sollte etwas mehr stehen als nur der Gruppenname, z.B.
    {Name -eq $Group1}. Warum nimmst nicht stattdessen -Identity?
     
    Donnerstag, 13. Oktober 2016 11:37
  • Nachdem ich {Name -eq $Group1} eingegeben hatte, zeigt er die Fehler:

    Get-ADGroup: Der Suchfilter wurde nicht erkannt
    Fehler beim Aufrufen der Methode, da [System.Management.Automation.PSObject] keine Methode mit dem Namen "op_Addition" enthält. (Zeile 34, Zeichen: 18)

    Vorher waren es:

    Get-ADGroup: Fehler beim Analysieren der Abfrage, aber den Fehler verstehe ich mittlerweile.
    Fehler beim Aufrufen der Methode, da [System.Management.Automation.PSObject] keine Methode mit dem Namen "op_Addition" enthält. (Zeile 34, Zeichen: 18)

    Ich habe kein Identity genommen, weil ich es nicht kannte. Und auch jetzt habe ich gegoogelt und nix gefunden....kann damit nichts anfangen.....(sry, bin noch Azubi) ;)

    Donnerstag, 13. Oktober 2016 12:00
  • Hallo ,

    Schau dir mal in der Build In Hilfe die Beispiele zu Get-ADGroup an, da sieht man ganz gut, wie man mit dem Filter umgeht. Hier ist mal ein Ansatz, wie du deine Gruppenmitglieder in eine txt schreiben kannst.

    $Path = 'C:\test.txt'
    
    New-Item -Path $Path -ItemType File -Force
    
    # Zum Finden der Gruppe eine der beiden Abfragen nehmen.
    
    $Groups= Get-ADGroup -Filter  'Name -Like "$Group1"'
    
    $GroupName= "Group1" 
    $groups = Get-ADGroup $GroupName
    
    
    #Schleife damit alles Untereinander Steht und in die txt Datei geschrieben wird. 
    
    foreach($group in $groups){
    
    
    
    $member = (Get-ADGroup $group | Get-ADGroupMember).name | out-string
    $name = $group.Name
    Add-Content -Path $Path -Value "Grupenname $Groupname"
    Add-Content -Path $Path -Value $member
    Add-Content -Path $Path -Value "--------------"
    
    }

    Es geht sicherlich hübscher, es ist ein Ansatz für dich.

    Grüße Andy

    Freitag, 14. Oktober 2016 07:04