我正在尝试让这个bash脚本工作,但我不知所措。我有一个文本文件,其中包含逐行的帧编号列表。 ffmpeg报告错误:
Undefined constant or missing '(' in '$name)'
脚本
#!/bin/bash
source text.txt
while read name
do
ffmpeg -i result.mp4 -vf "setpts=N+1,select='eq(n,\$name)'" -vframes 1 frame-$i.jpg
done <text.txt
答案 0 :(得分:2)
您正在转换变量名前的$
,即$name
,因此$name
将按字面处理,而不会进行任何变量扩展。
执行:
ffmpeg -i result.mp4 -vf "setpts=N+1,select='eq(n,$name)'" -vframes 1 frame-$i.jpg