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-Key: 248776

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

Printed on: April 23, 2024 at 21:04 o'clock

Member: colinardo
colinardo Sep 10, 2014 updated at 09:39:21 (UTC)
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
Member: Coloneltw
Coloneltw Sep 10, 2014 at 14:58:17 (UTC)
Goto Top
Hallo Uwe,
vielen lieben Dank, das ist prima und funktioniert prächtig.
Member: colinardo
colinardo Sep 10, 2014 at 15:20:41 (UTC)
Goto Top
Dann bitte auch gelöst nicht vergessen. Merci.