Mit findstr einen pfad hinter einem zeichen zu variable setzen
Hallo,
zurzeit beschäftige ich mich mit einer Batchdatei, die einen beliebigen Laufwerkspfad hinter einem kurzem Text mit "=" zu einer Variable setz. Hier ein Beispiel: Im der Textdatei steht pfad=c:\Verzeichnis1\Verzeichnis2. Ergebnis soll dann so lauten: echo %Pfad% wird dann zu c:\Verzeichnis1\Verzeichnis2
Hier meine bissherige Batchzeile mit falschem Ergebnis:
FOR /f %%f IN ('findstr Laufwerkpfad= test.txt') DO set Pfad=%%f echo %Pfad%
Wenn man dieses Programm durchlaufen lässt bekommt man "Echo ist ausgeschaltet (OFF)
Ich bin dankbar und offen für jede Hilfe.
LG
bilalui
zurzeit beschäftige ich mich mit einer Batchdatei, die einen beliebigen Laufwerkspfad hinter einem kurzem Text mit "=" zu einer Variable setz. Hier ein Beispiel: Im der Textdatei steht pfad=c:\Verzeichnis1\Verzeichnis2. Ergebnis soll dann so lauten: echo %Pfad% wird dann zu c:\Verzeichnis1\Verzeichnis2
Hier meine bissherige Batchzeile mit falschem Ergebnis:
FOR /f %%f IN ('findstr Laufwerkpfad= test.txt') DO set Pfad=%%f echo %Pfad%
Wenn man dieses Programm durchlaufen lässt bekommt man "Echo ist ausgeschaltet (OFF)
Ich bin dankbar und offen für jede Hilfe.
LG
bilalui
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 226321
Url: https://administrator.de/contentid/226321
Ausgedruckt am: 22.11.2024 um 09:11 Uhr
3 Kommentare
Neuester Kommentar
Hallo @bilalui,
poste doch bitte den entsprechenden Teil der Textdatei und den entsprechenden Teil der Batch-Datei in -Tags.
Momentan kann ich nur raten, wo dein problem liegt.
Gruß,
@Snowman25
poste doch bitte den entsprechenden Teil der Textdatei und den entsprechenden Teil der Batch-Datei in -Tags.
Momentan kann ich nur raten, wo dein problem liegt.
Gruß,
@Snowman25
Hallo bilalui, Willkommen im Forum!
Lese Dir mal folgendes Exkurs (verzögerte) Variablenerweiterung .Du benötigst für die verzögerte Variablenerweiterung am Anfang das setlocal ENABLEDELAYEDEXPANSION und die Variable in der Schleife muss anstatt mit Prozentzeichen mit Ausrufezeichen umschlossen werden. Die Verzögerte Variablenerweiterung bewirkt das alles was zwischen zwei Ausrufezeichen steht erst zur Ausführungszeit des Scriptes expandiert wird anstatt beim parsen des Scriptes.
Grüße Uwe
@echo off & setlocal enabledelayedexpansion
FOR /f "tokens=2 delims==" %%f IN ('findstr Laufwerkpfad= test.txt') DO @(
set Pfad=%%f
echo !Pfad!
)
Grüße Uwe