Exchange Management Shell vs Taskscheduler: Unterschiedliche Ergebnisse Exchange Management Shell vs Tasksceduler
Hallo zusammen,
bin gerade auf ein mir unerklärliches Pänomen gestoßen.
Unser AD hat für jeden Standort eine OU die wie das Standortkürzel benannt ist.
In diesen OUs gibt es dynamische Verteilgruppen á la "ALL DE BERLIN".
Wenn ich nun auf dem Exchange in der Management Shell folgenden Befehl ausführe bekomme ich eine komplette CSV-Datei über alle dynamischen Verteillisten inkl. Gruppenmittglieder und deren E-Mail-Adresse.
Soweit so gut...
Möchte ich dies aber nun per Task Scheduler automatisieren bekomme ich in dieser CSV-Datei nur die Mitglieder der ersten OU angezeigt.
Aufgerufen wird das Script im Taskscheduler unter Actions mit "Start a programm" > Program/script "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" > Arguments "-NonInteractive -WindowStyle Hidden -command ". 'C:\Program Files\Microsoft\Exchange Server\V15\bin\RemoteExchange.ps1'; Connect-ExchangeServer -auto;C:\Scripte\createVerteillistenTable.ps1"
Selbst wenn ich das Script über die Exchange Management Shell starte bekomme ich nur das Teilergebnis.
Jemand eine Idee was ich falsch mache?
LG Steve
bin gerade auf ein mir unerklärliches Pänomen gestoßen.
Unser AD hat für jeden Standort eine OU die wie das Standortkürzel benannt ist.
In diesen OUs gibt es dynamische Verteilgruppen á la "ALL DE BERLIN".
Wenn ich nun auf dem Exchange in der Management Shell folgenden Befehl ausführe bekomme ich eine komplette CSV-Datei über alle dynamischen Verteillisten inkl. Gruppenmittglieder und deren E-Mail-Adresse.
foreach ($group in (Get-DynamicDistributionGroup)){Get-Recipient -RecipientPreviewFilter $group.RecipientFilter -OrganizationalUnit $group.RecipientContainer | Select DisplayName,PrimarySmtpAddress,@{n="Group";e={$group.name}} | Export-Csv "\DFS-Pfad\Verteillisten.csv" -Delimiter ";"}
Soweit so gut...
Möchte ich dies aber nun per Task Scheduler automatisieren bekomme ich in dieser CSV-Datei nur die Mitglieder der ersten OU angezeigt.
Aufgerufen wird das Script im Taskscheduler unter Actions mit "Start a programm" > Program/script "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" > Arguments "-NonInteractive -WindowStyle Hidden -command ". 'C:\Program Files\Microsoft\Exchange Server\V15\bin\RemoteExchange.ps1'; Connect-ExchangeServer -auto;C:\Scripte\createVerteillistenTable.ps1"
Selbst wenn ich das Script über die Exchange Management Shell starte bekomme ich nur das Teilergebnis.
Jemand eine Idee was ich falsch mache?
LG Steve
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 394532
Url: https://administrator.de/contentid/394532
Ausgedruckt am: 22.11.2024 um 03:11 Uhr
8 Kommentare
Neuester Kommentar
"\DFS-Pfad\Verteillisten.csv"
Hier wird für jede Gruppe immer die selbe Datei erstellt, also immer wieder überschrieben, weil das Export-Csv innerhalb der FOR-EACH-Schleife sitzt .Zitat von @SteveDN:
Hi,
ja es wird eine Datei erzeugt in der alle Verteillistenmitglieder aufgelistet sind. Diese soll jeden Sonntag überschrieben werden.
Les meine Antwort nochmal genau ... die Position des Export-CSV ist falsch, die überschreibt immer wieder für jede Gruppe die CSV.Hi,
ja es wird eine Datei erzeugt in der alle Verteillistenmitglieder aufgelistet sind. Diese soll jeden Sonntag überschrieben werden.
Tut es nicht.
Get-DynamicDistributionGroup | %{$group = $_; Get-Recipient -RecipientPreviewFilter $_.RecipientFilter -OrganizationalUnit $_.RecipientContainer | Select DisplayName,PrimarySmtpAddress,@{n="Group";e={$group.name}}} | Export-Csv "\DFS-Pfad\Verteillisten.csv" -Delimiter ";" -NoType -Encoding UTF8
Nöp, geht hier einwandfrei. Ist eine einfach Foreach-Schleife in der die Properties für jede Gruppe ausgegeben werden und anschließend alle in die CSV wandern, bei dir wird nur immer eine Gruppe im File weil ich ja schon geschrieben habe das dein Export-CSV in der Schleife steht und das File immer wieder überschrieben wird, nicht außerhalb um alle Gruppen zu erfassen.