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

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

Printed on: April 20, 2024 at 10:04 o'clock

Member: Friemler
Solution Friemler Jan 18, 2021 at 22:09:00 (UTC)
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
Member: Django.Durano
Django.Durano Jan 21, 2021 at 15:25:48 (UTC)
Goto Top
Hallo Friemler,

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


Grüße
Django