Powershell string von links abschneiden
Guten Morgen,
ich versuche mit dem Befehl
Die Pfade alle Mailboxen auszulesen.
Aus den Pfaden interessiert mich nun das Feld Identity
Nun ist es so, dass ich alles vor dem Benutzernamen weghaben möchte. Der Vorteil dabei ist, das letzte Zeichen vor dem Benutzernamen ist ein "\"
Es soll also nur info-Postfach3\Versions überbleiben, der restliche Text soll weg.
Das versuche ich jetzt mit
Aber das geht nicht "keine Methode mit den Namen "replace" enthält....." ist dann die Fehlermeldung.
Auch mit .split komme ich nicht weiter.
Hat jemand von Euch einen Tipp für mich, wie ich da weiterkommen kann?
Herzlichen Dank
ich versuche mit dem Befehl
$user = Get-Mailbox | get-mailboxfolderstatistics
Die Pfade alle Mailboxen auszulesen.
Aus den Pfaden interessiert mich nun das Feld Identity
$user2 = $user.identity
Nun ist es so, dass ich alles vor dem Benutzernamen weghaben möchte. Der Vorteil dabei ist, das letzte Zeichen vor dem Benutzernamen ist ein "\"
contoso.com/Kunden/Mail/Ressourcen/Info-Postfach3\Versions
Es soll also nur info-Postfach3\Versions überbleiben, der restliche Text soll weg.
Das versuche ich jetzt mit
$user3 = $user2.replace("/"," ")
Aber das geht nicht "keine Methode mit den Namen "replace" enthält....." ist dann die Fehlermeldung.
Auch mit .split komme ich nicht weiter.
Hat jemand von Euch einen Tipp für mich, wie ich da weiterkommen kann?
Herzlichen Dank
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 660562
Url: https://administrator.de/contentid/660562
Ausgedruckt am: 22.11.2024 um 17:11 Uhr
12 Kommentare
Neuester Kommentar
$user.identity.toString().split("/")[-1]
Lass dir mal die Eigenschaften des Typs anzeigen und poste sie hier, habe gerade kein EX zur Hand
bzw.
$user.identity | fl *
$user.identity | gm *
Ja klar, das Ergebnis von Get-MailboxFolderStatistics ist a ja ein Array mit sämtlichen Foldern der Mailbox also musst du entweder den Index des Folders angeben oder eben nach Name des Ordners filtern
Wozu du aber die Identity parsen willst ?? Den Namen der Mailbox bekommst du ja schon mit Get-Mailbox frei Haus geliefert .
Ist also überflüssig ---> Guckst du hier:
$user | ?{$_.Name -eq "Calendar"} | %{$_.Identity.toString().split("/")[-1]}
Ist also überflüssig ---> Guckst du hier:
Get-Mailbox -PipelineVariable mailbox | Get-MailboxFolderStatistics | select @{n='Mailbox';e={$mailbox.Name}},FolderPath
Guckst du mein oben ergänztes Beispiel ...
Das String Gedröhns ist also vollkommen überflüssig!
Im Array steht die Mailbox so nicht drin.
Die Mailbox kannst du ganz einfach über die Pipeline drücken und nutzen .Get-Mailbox -PipelineVariable mailbox | Get-MailboxFolderStatistics | select @{n='Mailbox';e={$mailbox.Name}},FolderPath
Zitat von @RME1985:
Jetzt muss ich nur noch den / in \ in der Folderpath umdrehen und dann passt das doch
Brauchst du nicht wenn du direkt mit Get-MailboxFolder in der Pipe arbeitest Jetzt muss ich nur noch den / in \ in der Folderpath umdrehen und dann passt das doch
Get-Mailbox -PipelineVariable mailbox | select @{n='Mailbox';e={$mailbox.Name}},@{n='Permissions';e={$mailbox | Get-MailboxFolder -Recurse | Get-MailboxFolderPermission | select FolderName,User,AccessRights}}