我尝试从用户 (vcodec) 读取一个值。现在,find
命令找到文件并将它们存储在 中{}
。我想使用参数扩展来创建自定义输出。但我当然得到了错误'bad substitution'
。我该如何解决这个问题?谢谢。
#!/bin/bash
read vcodec
find -exec ffmpeg -i "{}" -c:v "$vcodec" "${{}%.*}.mkv" \;
答案1
用这个:
read -p 'vcodec >>> ' vcodec
find . -exec bash -c 'ffmpeg -i "$2" -c:v "$1" "${2%.*}.mkv"' -- "$vcodec" {} \;