Automator bash shell脚本麻烦

时间:2015-04-04 23:47:46

标签: bash shell audio ffmpeg automator

我可能在这里遗漏了一些非常简单的东西,但是我在构建运行bash shell脚本的automator服务时遇到了麻烦。插入shell时脚本的所有元素都可以正常工作,但由于某种原因,自动机服务无法运行。该脚本调用ffmpeg来转换从finder传递给它的音频文件:



for f in "$@"
do
  fn="${f%%.*}"
  ~/Applications/ffmpeg/ffmpeg -i "$f" -acodec libmp3lame -q:a 7 -ar 8000 -ac 1 "$fn.mp3"
done




该脚本在没有ffmpeg命令的情况下运行正常,并且ffmpeg命令在终端中自行运行正常。错误来自哪里?

谢谢!

1 个答案:

答案 0 :(得分:0)

它最终在终端和自动机如何处理变量字符串方面有所不同。虽然命令在终端中执行正常,但我需要在automator中的fn变量周围添加括号。

~/Applications/ffmpeg/ffmpeg -i "$f" -acodec libmp3lame -q:a 7 -ar 8000 -ac 1 "${fn}.mp3"

运行得很好。