英文:
in bash/linux: How to create the file text for output completed converted from FFmpeg..?
问题
我在Google上找不到关于如何批处理中使用FFmpeg创建输出已完成文本文件的信息。
示例:我找到了1000个旧视频文件(.avi),但我想知道已完成输出的情况,例如ECHO $files > text.txt.. 但我在Google或Stack Overflow上找不到相关信息。
我在.sh文件中使用了批处理命令FIND和FFMPEG。
fortmat4find='.avi'
format4output='mp4'
.....
.....
sh -c "find . -iname $format4find -exec ffmpeg -n -i {} {}-CONVERTED$format4output > text.txt \;"
结果没有将任何内容输出到text.txt文件中,作为已完成转换的标志。
text.txt文件的内容将如下所示:
./folder1/folder2/AAA.avi-CONVERTED.mp4
./folder4/folder5/AAA.avi-CONVERTED.mp4
....
...
我查阅了指南,但没有找到相关信息。
英文:
i don't find in google, how to create file text for output completed from FFmpeg in batch?
example: i find 1000 files old video (.avi) but i want to know what is done completed output example ECHO $files > text.txt.. but i don't find in google or here STACKOVERFLOW..
i use batch in file .sh, there are command FIND, FFMPEG
fortmat4find='.avi'
format4output='mp4'
.....
.....
sh -c "find . -iname $format4find -exec ffmpeg -n -i {} {}-CONVERTED$format4output > text.txt \;";
result nothing output to text.txt as completed converted..
inside of text.txt will be result like this:
./folder1/folder2/AAA.avi-CONVERTED.mp4
./folder4/folder5/AAA.avi-CONVERTED.mp4
....
...
i check in guide.. but nothing find information..
答案1
得分: 1
#!/bin/bash
format4find=".mkv"
format4output=".mp4"
find . -name "*$format4find" -exec sh -c '
EXT=$1
shift 1
for INP; do
DUR=$(ffprobe -v error -show_entries format=duration -of default=nw=1:nk=1 "$INP")
OUT="${INP%.*}-CONVERTED$EXT"
echo "$DUR $INP $OUT"
if ffmpeg -n -i "$INP" "$OUT"; then
echo "$OUT" >> completed.log
else
echo "$INP → error" >> error.log
fi
done' sh $format4output {} +
英文:
echo
#!/bin/bash
format4find=".mkv"
format4output=".mp4"
find . -name "*$format4find" -exec sh -c '
EXT=$1
shift 1
for INP; do
DUR=$(ffprobe -v error -show_entries format=duration -of default=nw=1:nk=1 "$INP")
OUT="${INP%.*}-CONVERTED$EXT"
echo "$DUR $INP $OUT"
if ffmpeg -n -i "$INP" "$OUT"; then
echo "$OUT" >> completed.log
else
echo "$INP → error" >> error.log
fi
done' sh $format4output {} +
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论