coloneltw
Goto Top

Powershell: Aus String die letzten Werte ermitteln

Hallo liebe Foristen,
ich sitze an einem kleinen Powershell Problem.

Ich habe einen UNC Pfad und möchte das letzte Wort nach dem letzten \ haben.

\\hallo.com\verzeichnis1\verzeichnis2\username

ich brauche den Usernamen

Leider sind diese alle unterschiedlich lang, mit nur substring komme ich daher nicht weit.
Ich müsste mir also vorher die Stelle des letzten \ geben lassen und dann einen substring machen.

Nur ich habe keinen Plan wie.

Ich habe versucht mit Replace die Zeichen davor zu entfernen - aber das mag er nicht und wirft ein ungültiges Muster zurück

$1 = "\\hallo.com\verzeichnis1\verzeichnis2\username"
$2 = $1 -replace "\\hallo.com\verzeichnis1\verzeichnis2\"
$2

Könnt ihr mir helfen?
Vielen Dank

Content-ID: 248776

Url: https://administrator.de/contentid/248776

Ausgedruckt am: 05.11.2024 um 12:11 Uhr

colinardo
colinardo 10.09.2014 aktualisiert um 11:39:21 Uhr
Goto Top
Moin Coloneltw,
Split-Path '\\hallo.com\verzeichnis1\verzeichnis2\username' -Leaf
oder
[System.IO.Path]::GetFileName('\\hallo.com\verzeichnis1\verzeichnis2\username')
oder
$path = '\\hallo.com\verzeichnis1\verzeichnis2\username'  
$username = $path.Substring($path.LastIndexOf('\')+1)  
oder
([regex]'[^\\]+$').Match('\\hallo.com\verzeichnis1\verzeichnis2\username').Value
such dir eins aus ... die Liste könnte ich jetzt unendlich weiterführen face-smile

Grüße Uwe
Coloneltw
Coloneltw 10.09.2014 um 16:58:17 Uhr
Goto Top
Hallo Uwe,
vielen lieben Dank, das ist prima und funktioniert prächtig.
colinardo
colinardo 10.09.2014 um 17:20:41 Uhr
Goto Top
Dann bitte auch gelöst nicht vergessen. Merci.