Pfad aus Variable auslesen
Hallo,
ich habe per Nutzereingabe einen kompletten Dateipfad in einer Variable, an einer einer Stelle brauche ich aber nur den Pfad, ohne die Datei, weil ich in dieses Verzeichnis wechseln möchte.
zB.
set source=C:\123\456.exe
=> ich brauche aber nur C:\123\
die Namen sind auch je nach Eingabe unterschiedlich lang, deshalb reicht es auch nicht nur die letzten Zeichen wegzuschneiden.
ich habe per Nutzereingabe einen kompletten Dateipfad in einer Variable, an einer einer Stelle brauche ich aber nur den Pfad, ohne die Datei, weil ich in dieses Verzeichnis wechseln möchte.
zB.
set source=C:\123\456.exe
=> ich brauche aber nur C:\123\
die Namen sind auch je nach Eingabe unterschiedlich lang, deshalb reicht es auch nicht nur die letzten Zeichen wegzuschneiden.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 108839
Url: https://administrator.de/forum/pfad-aus-variable-auslesen-108839.html
Ausgedruckt am: 30.04.2025 um 01:04 Uhr
2 Kommentare
Neuester Kommentar
Hallo draik89 und willkommen im Forum!
Für derartige Zerlegungen ist in Batch eine "for"-Schleife "zuständig":
Mehr dazu mit "for /?" (gegen Ende
).
Falls es Dich interessiert: Als "Pfad" ("path") wird bei dieser Zerlegung alles vom ersten bis zum letzten "\" des übergebenen Strings (zumindest, solange es kein UNC-Pfad ist) interpretiert, daher auch vorweg noch die Angabe des Laufwerkes ("drive").
Grüße
bastla
Für derartige Zerlegungen ist in Batch eine "for"-Schleife "zuständig":
@echo off & setlocal
set source=C:\123\456.exe
for %%i in ("%source%") do set "PathOnly=%%~dpi"
echo %PathOnly%
Falls es Dich interessiert: Als "Pfad" ("path") wird bei dieser Zerlegung alles vom ersten bis zum letzten "\" des übergebenen Strings (zumindest, solange es kein UNC-Pfad ist) interpretiert, daher auch vorweg noch die Angabe des Laufwerkes ("drive").
Grüße
bastla