Batch - TXT auslesen inkl Pfade ( Leerzeichen)
Sprache: Batch
möchte folgende TXT Datei auslesen:
C:\Programme\ScriptLogic Manager
C:\Programme\CA
Diese möchte ich für eine Sicherung mittels Batch auslsesen. Die Sicherung erfolgt auf einem NAS-Server in einem Ordner "C". Hier soll automatisch die Pfad-Struktur der einzelnen Pfade angelegt werden.
Das Problem besteht darin, dass einige Pfade Leerzeichen enthalten (siehe 1.Pfad).
Habe bereits folgendes getestet:
for /f "tokens=2*" %%a in (sicherung.txt) do set "DIRECTORY=%%b"
edit:
Mit diesem Befehl:
FOR /F "delims=;" %%I in (nas-sicherung.bks) DO echo %%I
erhalte ich den kompletten Pfad:
Bsp: C:\Prgramme\Programm Hallo\test
Wie kann ich die Variable nun umsetzen, dass diese ab dem 4.Zeichen anfängt.
´(In diesem Fall Variable= Programme\Programm Hallo\test
möchte folgende TXT Datei auslesen:
C:\Programme\ScriptLogic Manager
C:\Programme\CA
Diese möchte ich für eine Sicherung mittels Batch auslsesen. Die Sicherung erfolgt auf einem NAS-Server in einem Ordner "C". Hier soll automatisch die Pfad-Struktur der einzelnen Pfade angelegt werden.
Das Problem besteht darin, dass einige Pfade Leerzeichen enthalten (siehe 1.Pfad).
Habe bereits folgendes getestet:
for /f "tokens=2*" %%a in (sicherung.txt) do set "DIRECTORY=%%b"
edit:
Mit diesem Befehl:
FOR /F "delims=;" %%I in (nas-sicherung.bks) DO echo %%I
erhalte ich den kompletten Pfad:
Bsp: C:\Prgramme\Programm Hallo\test
Wie kann ich die Variable nun umsetzen, dass diese ab dem 4.Zeichen anfängt.
´(In diesem Fall Variable= Programme\Programm Hallo\test
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 132381
Url: https://administrator.de/forum/batch-txt-auslesen-inkl-pfade-leerzeichen-132381.html
Ausgedruckt am: 23.12.2024 um 17:12 Uhr
2 Kommentare
Neuester Kommentar
Moin MrVain,
du könntest natürlich mit der CMD-eigenen Substring-Funktion "ab dem 4 Zeichen abschneiden".
Aber dann musst du die ausgelesene Textzeile zwischenspeichern in eine mit SET gesetzte Umgebungsvariable.
Kürzer geht es so (Demo am CMD-Prompt, ">" nicht mit eingeben)
Im Batch jeweils 2 Prozentzeichen vor den dynamischen Variablen %i und %j.
Grüße
Biber
du könntest natürlich mit der CMD-eigenen Substring-Funktion "ab dem 4 Zeichen abschneiden".
Aber dann musst du die ausgelesene Textzeile zwischenspeichern in eine mit SET gesetzte Umgebungsvariable.
Kürzer geht es so (Demo am CMD-Prompt, ">" nicht mit eingeben)
>for /f "delims=\ tokens=1*" %i in (pfade.txt) do @echo %j
Programme\ScriptLogic Manager
Programme\CA
Im Batch jeweils 2 Prozentzeichen vor den dynamischen Variablen %i und %j.
Grüße
Biber