Wie gesagt, die Umleitungsfunktion ">log.txt 2>&1" gehört zur CMD.exe, daher
Kommando: cmd /k
Parameter: " "L:\aufwerk\Pfad zu\ffMpeg\ffmpeg.exe" -v error -i %P%N -f null - >> "%Perror.log" 2>&1 "
Code: Select all
TOTALCMD#BAR#DATA
cmd /k
" "C:\A\ff Mp eg\ffmpeg.exe" -v error -i %P%N -f null - >> "%Perror.log" 2>&1 "
%COMMANDER_PATH%\TOTALCMD.EXE,2
ffmpeg
-1
Mittels %P%N wird die ausgewählte Datei inklusive Pfad übergeben (TC fügt Anführungszeichen automatisch an, falls nötig)
Mit %P wird die Logdatei im aktuellem Pfad geschrieben.
" "L:\aufwerk\Pfad zu\ffMpeg\ffmpeg.exe" -v error -i %P%N -f null - >> "%Perror.log" 2>&1 "
Mit den äußeren Anführungszeichen wird der gesamte String von TC an die CMD.exe übergeben, diese entfernt die äußeren Anführungszeichen.
"L:\aufwerk\Pfad zu\ffMpeg\ffmpeg.exe" -v error -i %P%N -f null - >> "%Perror.log" 2>&1
Dann wird versucht, ffmped.exe in einem Pfad mit Leerzeichen zu starten, daher der Pfad in Anführungszeichen.
%P%N wird vom TC automatisch in Anführungszeichen gesetzt, falls ein Leerzeichen im Pfad entdeckt wurde.
"%Perror.log" wird ebenfalls vorsichtshalber von uns selbst in Anführungszeichen gesetzt, falls der %P fad Leerzeichen enthalten sollte.
TEST
Wähle eine *.mp4 und klicke auf den Button:
error.log
C:\A\ffMpeg\ffmpeg.exe: Invalid data found when processing input
C:\A\ff Mp eg\__INFOs.txt: Invalid data found when processing input
C:\A\ffMpeg\__INFOs.txt: Invalid data found when processing input
Ich habe bei mir die Ausgabeumleitung zu ">>" ergänzt, um das Log nicht
zu überschreiben, sondern dort anzufügen, und etwas mit Leerzeichen 'rum gespielt.
Was soll den dieser Befehl bewirken? Ich habe wohl nicht mit einer "testwürdigen" MP4-Datei getestet
- - -
2
Wilhelm M.
Poste doch mal deine komplette Lösung, damit andere, welche auf diesen Thread stoßen, auch etwas davon haben.