Ich möchte eine Liste aller Benutzerpostfächer abrufen und anzeigen, wer das Postfach zuletzt geändert hat - im Moment habe ich meine grundlegenden Komponenten in Form von:Wer hat zuletzt eine Mailbox geändert? Exchange 2010 (PowerShell)
$mailbox | % {Search-AdminAuditLog | Where-Object {ObjectModified -eq $_.identity} | Select-Object -First 1 -Property CmdLetName,Caller,RunDate | Out-file "C:\tmp\$_.mailbox"}
wo $ Mailbox eine Liste der Postfächer enthält I zu verarbeiten wollen:
$mailbox = GET-MAILBOXSERVER | Get-Mailbox -ResultSize Unlimited
Wenn ich (separat) laufen:
$mailbox | select Identity
Ich erhalte die erwarteten Identitäten, z.B.
testdomain.local/Users/Administrator
im Format ich erwarten zu können, würde zu meiner Suche weitergeben müssen:
Search-AdminAuditLog | Where-Object {$_.ObjectModified -eq "testdomain.local/Users/Administrator"} | Select-Object -First 1 -Property CmdLetName,Caller,RunDate
(die allein stehen, läuft gerade fein). Also ich bin mir nicht sicher warum, wenn ich meine Eingabe von $ mailbox pipe ich bekomme überhaupt keine Ergebnisse?
Danke für die reply- leider vergleichen versuchen, meine ursprüngliche Frage Phrasierung etwas unklar war - die letzte Zeile in der Tat für nicht funktioniert ich, die Herausforderung, die ich habe, ist, wenn ich irgendwelche Parameter in den Abschnitt "Mein Objektpfad" übergebe. Ich werde die Frage aktualisieren, um ein bisschen mehr Klarheit hinzuzufügen! Nochmals vielen Dank – AskJarv
Überprüfen Sie meine Bearbeitung, ich denke, 2 Listenobjekte mit der Pipeline zu vergleichen könnte zu viel verlangen. – Nick
Danke - du hast recht - zu viele Pipes (das bringt mir bei, es auf einer einzigen Zeile zu halten!) - Ich habe jedes Element in Variablen umstrukturiert und gespeichert und seriell verarbeitet, anstatt zu versuchen, in ein anderes zu pinnen Rohr. Nochmals vielen Dank für Ihre Hilfe Nick! – AskJarv