PowerShell: Get-Mailbox soll auch OU Zugehörigkeit mit ausgeben
Hallo,
ich benötige eine Excel-Liste mit all unseren Postfächern. Ich habe bis jetzt diesen Aufruf verwendet:
Get-Mailbox -ResultSize Unlimited -OrganizationalUnit "OU=_Benutzer,DC=domäne,DC=local" |Select-Object DisplayName,PrimarySmtpAddress, @{Name="EmailAddresses";Expression={$_.EmailAddresses |Where-Object {$_.PrefixString -ceq
"smtp"} | ForEach-Object {$_.SmtpAddress}}} | export-csv c:\test.csv
Wie bekomme ich es jetzt hin, dass er mir zu einem Benutzer mit seinem Postfach auch die OU mit ausgibt, in der sich der User befindet?
Wer kann mir hierbei helfen?
Viele Grüße
TiTux
ich benötige eine Excel-Liste mit all unseren Postfächern. Ich habe bis jetzt diesen Aufruf verwendet:
Get-Mailbox -ResultSize Unlimited -OrganizationalUnit "OU=_Benutzer,DC=domäne,DC=local" |Select-Object DisplayName,PrimarySmtpAddress, @{Name="EmailAddresses";Expression={$_.EmailAddresses |Where-Object {$_.PrefixString -ceq
"smtp"} | ForEach-Object {$_.SmtpAddress}}} | export-csv c:\test.csv
Wie bekomme ich es jetzt hin, dass er mir zu einem Benutzer mit seinem Postfach auch die OU mit ausgibt, in der sich der User befindet?
Wer kann mir hierbei helfen?
Viele Grüße
TiTux
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 300382
Url: https://administrator.de/forum/powershell-get-mailbox-soll-auch-ou-zugehoerigkeit-mit-ausgeben-300382.html
Ausgedruckt am: 21.12.2024 um 17:12 Uhr
6 Kommentare
Neuester Kommentar
Get-Mailbox -ResultSize Unlimited -OrganizationalUnit "OU=_Benutzer,DC=domäne,DC=local" | Select DisplayName,PrimarySmtpAddress, @{n="EmailAddresses";e={$_.EmailAddresses | Where-Object {$_.PrefixString -ceq "smtp"} | ForEach-Object {$_.SmtpAddress}}}, OrganizationalUnit | export-csv 'c:\test.csv' -Delimiter ";" -NoType -Encoding UTF8
Get-Mailbox -ResultSize Unlimited -OrganizationalUnit "OU=_Benutzer,DC=domäne,DC=local" | Select DisplayName,PrimarySmtpAddress, @{n="EmailAddresses";e={$_.EmailAddresses | Where-Object {$_.PrefixString -ceq "smtp"} | ForEach-Object {$_.SmtpAddress}}}, @{n="OU";e={$_.DistinguishedName.split(',',2)[1]}}| export-csv 'c:\test.csv' -Delimiter ";" -NoType -Encoding UTF8
Gruß jodel32
Ohne den Parameter exportiert die Powershell zusätzliche Typeninformationen in dem Header der CSV, die ein vernünftiges auslesen von Programmen verhindern. Probiers einfach mal mit und ohne, dann siehst du schon den Unterschied. So wie ich es oben gemacht habe, lässt sich die CSV direkt korrekt mit richtiger Spaltenzuordnung in Excel öffnen.
Alles leider vollkommen falsch.
ft = Format-Table formatiert die Ausgabe als Format-String, dies kann man nicht an export-csv pipen weil es kein passendes Objekt mit Eigenschaften ist und nur vom Typ Format-String!
Zweitens kennt out-file keinen Parameter Namens -delimiter!
Denke immer daran die Powershell arbeitet mit Objekten. Wenn du also nur bestimmte Spalten exportieren willst, nimmst du das CMDLet select das belässt die Objekte wie sie sind. Das wird für den Export via Export-CSV benötigt.
Bestimmte Eigenschaften bedürfen auch manchmal das man sie vorher expandiert bevor man sie in eine Textdatei exportieren kann. Dies macht man dann meist über CalculatedProperties.
Bitte beschäftige dich erst mal mit den PS Grundlagen bevor du dich an das AD wagst. Du steigst hier 10 Etagen höher ein...
ft = Format-Table formatiert die Ausgabe als Format-String, dies kann man nicht an export-csv pipen weil es kein passendes Objekt mit Eigenschaften ist und nur vom Typ Format-String!
Zweitens kennt out-file keinen Parameter Namens -delimiter!
Denke immer daran die Powershell arbeitet mit Objekten. Wenn du also nur bestimmte Spalten exportieren willst, nimmst du das CMDLet select das belässt die Objekte wie sie sind. Das wird für den Export via Export-CSV benötigt.
Get-ADComputer -Filter * -Properties * | select Name, OperatingSystem, OperatingSystemVersion, LastLogonDate, enabled | export-csv 'C:\Temp\ADUserList.csv' -Delimiter "`t" -NoType -Encoding UTF8
Bitte beschäftige dich erst mal mit den PS Grundlagen bevor du dich an das AD wagst. Du steigst hier 10 Etagen höher ein...