django.durano
Goto Top

For-Schleife Probleme mit Anführungszeichen

Hallo,

ich habe folgendes Problem.

Ich versuche folgende For-Schleife auszuführen

for /f "tokens=1,2 delims=," %%i in ('"%dp0%\Tools\ffprobe.exe" -v error -select_streams v:0 -show_entries stream^=width^,height -of csv^=p^=0 "%pfadtemp%\temp 22.mkv"') do ( set irgendwas)  

Das Problem dabei ist nun der zweite Pfadblock mit der temp 22.mkv.

Wenn ich die For-Schleife so ausführe bekomme ich jedes mal den Fehler das die Syntay für Dateiname usw nicht passt.
Entferne ich nun die Anführungszeichen um den Pfad und bennene die Datei um, das kein Leerzeichen mehr vorhanden ist funktioniert das Ganze ohne Probleme.

So funktioniert es.

for /f "tokens=1,2 delims=," %%i in ('"%dp0%\Tools\ffprobe.exe" -v error -select_streams v:0 -show_entries stream^=width^,height -of csv^=p^=0 %pfadtemp%\temp22.mkv') do ( set irgendwas)  

Ich habe mir auch schon die Variable %pfadtemp% über echo ausgeben lassen, dort sind auch keine " " oder ähnliches enthalten.
Habe mir auch die For schleife mal per echo ausgeben lassen,

Verstehe nicht warum es hier so Probleme macht den Pfad in " " zu setzen.

Content-ID: 642004

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

Ausgedruckt am: 23.11.2024 um 14:11 Uhr

Friemler
Lösung Friemler 18.01.2021 um 23:09:00 Uhr
Goto Top
Hallo @Django.Durano,

da bist Du auf einen der vielen Fallstricke (um nicht zu sagen Bugs) im Batchscript-Interpreter gestoßen. Setze einen CALL-Befehl vor den Aufruf von ffprobe.exe, dann klappt das.

Siehe auch den Abschnitt Verarbeiten der Ausgabe eines Programms/Befehls in meinem Tutorial zur FOR-Schleife.

Grüße
Friemler
Django.Durano
Django.Durano 21.01.2021 um 16:25:48 Uhr
Goto Top
Hallo Friemler,

danke für die Antwort. Hat mit dem Call Befehl sofort funktioniert.


Grüße
Django