Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Hilfe bei Foreach benötigt (Anfänger)

Mitglied: ChristineS

ChristineS (Level 1) - Jetzt verbinden

16.05.2019 um 14:11 Uhr, 214 Aufrufe, 4 Kommentare

Hallo,


ich habe (bereits mit Hilfe) ein funktionierendes Script mit dem die Gruppen aller aktiven AD User ausgelesen werden (Im Code von get-aduser bis zum export). Das ganze benötige ich aber für 9 OU's.

Darüber habe ich einiges gefunden und so meine OUs in eine Variable geschrieben und ein zweites Foreach eingebaut. Das klappt so nicht wie ich bemerkt habe Wäre nett wenn mir jemand erklären kann was und warum es falsch ist?

01.
Foreach($OU in $OUs){
02.
get-aduser -Filter * -SearchBase $OU | %{
03.
    $groups = Get-ADPrincipalGroupMembership $_.SamAccountName | Select -ExpandProperty Name
04.
    foreach($group in $groups){
05.
        [pscustomobject]@{
06.
		     SamAccountName = $_.SamAccountName
07.
             Gruppe = $group
08.
			 }
09.
			 }
10.
} | export-csv $Ausgabe1 -Delimiter ';' -NoType -Append -Encoding UTF8/
11.
}


Danke
Mitglied: 139708
16.05.2019, aktualisiert um 15:41 Uhr
Moin,
in Zeile 10 die angehängte Pipe ist indem Fall falsch platziert. Du überschreibst damit für jede OU die selbe Datei, also liegen im File am Schluss immer nur die User der letzten OU, logisch ne .
Außerdem ist am Ende von Zeile 10 der Slash falsch, der hat keine Funktion und führt zu Fehlern.
Ergänze einfach -Append bei Export-CSV.


Gruß W.
Bitte warten ..
Mitglied: ChristineS
16.05.2019 um 15:19 Uhr
Hallo W.

Danke, aber ich verstehe das wahrscheinlich falsch, denn ich bekomme einen Fehler "An empty pipe element is not allowed"

01.
Foreach($OU in $OUs){
02.
get-aduser -Filter * -SearchBase $OU | %{
03.
    $groups = Get-ADPrincipalGroupMembership $_.SamAccountName | Select -ExpandProperty Name
04.
    foreach($group in $groups){
05.
        [pscustomobject]@{
06.
		     SamAccountName = $_.SamAccountName
07.
             Gruppe = $group
08.
			 }
09.
			 }
10.
} 
11.
} | export-csv $Ausgabe1 -Delimiter ';' -NoType -Append -Encoding UTF8
Bitte warten ..
Mitglied: 139708
LÖSUNG 16.05.2019, aktualisiert um 15:56 Uhr
Sorry, falscher Film...
01.
$Ausgabe1 = "c:\Pfad\datei.csv"
02.
$OUs = "OU=Test,DC=domain,DC=tld","OU=Test2,DC=domain,DC=tld"
03.
$data = @()
04.
Foreach($OU in $OUs){
05.
    $data += get-aduser -Filter * -SearchBase $OU | %{
06.
        $groups = Get-ADPrincipalGroupMembership $_.SamAccountName | Select -ExpandProperty Name
07.
        foreach($group in $groups){
08.
            [pscustomobject]@{
09.
		     SamAccountName = $_.SamAccountName
10.
                     Gruppe = $group
11.
             }
12.
         }
13.
    } 
14.
} 
15.
If ($data.Count -gt 0){
16.
    $data | export-csv -Path $Ausgabe1 -Delimiter ';' -NoType -Encoding UTF8
17.
}
Was aber in deinen Variablen $OUs und $Ausgabe1 steht kann hier keiner erraten, das klappt hier einwandfrei.
Bitte warten ..
Mitglied: ChristineS
16.05.2019 um 17:17 Uhr
Vielen Dank für deine Hilfe. Die Variablen Inhalte habe ich weggelassen da ich mir sicher war das diese funktionieren.
Jetzt gönne ich mir ein langes Wochenende und wenn ich mir das Script am Dienstag wieder ansehe hoffe ich das ich es noch immer verstehe.
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Powershell ForEach in ForEach
gelöst Frage von BuggerBatch & Shell4 Kommentare

Hallo, ich habe folgenden Code: Leider funktioniert das Script nur, wenn nur ein User in TestGruppe ist. Sobald mehrere ...

Batch & Shell
Brauche hilf bei einer batch Datei
gelöst Frage von PilllllleBatch & Shell7 Kommentare

hallo, ich versuche mit Hilfe von einer batch- Datei eine bestimmt Zeile aus einer txt- Datei in eine neue ...

Datenbanken
SQL Anywhere: FOREACH möglich?
Frage von BirdyBDatenbanken4 Kommentare

Hallo zusammen und ein gutes neues Jahr, ich möchte gerne in unserem ERP-System, bzw. der Datenbank dahinter bestimmte Änderungen ...

Batch & Shell
Powershell Foreach Key in Section
gelöst Frage von MarabuntaBatch & Shell2 Kommentare

Ich will Skriptseitig die ausgelesenen Versionen mit Soll-Versionen aus einer Ini-Datei abgleichen, nur wie prüfe ich so viele unterschiedliche ...

Neue Wissensbeiträge
Off Topic
Europawahl 2019 - Ein Statement der Jugend
Information von Frank vor 19 StundenOff Topic13 Kommentare

Dies ist ein offener Brief. Ein Statement. Von einem großen Teil der Youtuber-Szene. Am Wochenende sind die EU-Wahlen und ...

Off Topic
Europawahl 2019
Information von Frank vor 1 TagOff Topic44 Kommentare

Vom 23. bis 26. Mai 2019 findet die Europawahl in den Mitgliedstaaten der Europäischen Union statt (ja auch in ...

Humor (lol)

Minister wollen offenbar Ausweispflicht für .de-Domain

Information von Kraemer vor 2 TagenHumor (lol)7 Kommentare

Zitat von Golem.de: Die zuständigen Verbraucherschutzminister fordern einem Medienbericht zufolge offenbar eine Ausweispflicht für .de-Domains. Das soll Betrugsfälle mit ...

Off Topic
Was als Noob hier mal gesagt werden musste
Information von th30ther vor 3 TagenOff Topic5 Kommentare

Moinsen wertes Forum, ich möchte mich an dieser Stelle mal beim Forum generell und bei aqui speziell bedanken! Ich ...

Heiß diskutierte Inhalte
Off Topic
Europawahl 2019
Information von FrankOff Topic44 Kommentare

Vom 23. bis 26. Mai 2019 findet die Europawahl in den Mitgliedstaaten der Europäischen Union statt (ja auch in ...

Router & Routing
ZyXEL ZyWALL USG 20 Routing
Frage von Oggy01Router & Routing18 Kommentare

Hallo, und wieder habe ich ein Problem mit dem Routing. Bis vor ein paar Tagen habe ich das mit ...

Off Topic
Europawahl 2019 - Ein Statement der Jugend
Information von FrankOff Topic13 Kommentare

Dies ist ein offener Brief. Ein Statement. Von einem großen Teil der Youtuber-Szene. Am Wochenende sind die EU-Wahlen und ...

Server-Hardware
Server Umbau
Frage von cyberworm83Server-Hardware10 Kommentare

Hallo zusammen, ich habe einen 19" Server (HP ProLiant DL160 G6) dieser ist auch super. ABER jetzt meine Frage: ...