0

我正在尝试执行一个运行 Handbrake 视频转换的脚本。

如果我从终端运行以下命令,它工作正常:

HandbrakeCLI -i inputtestfile.mp4 -o outputtestfile.mp4 -z "Preset"

如果我将它放入 .sh 脚本(并使用 chmod a+x 赋予脚本执行权限),我会收到以下错误:

HandbrakeCLI: Command not found

如果我然后将完整路径放入 HandbrakeCLI,它就会起作用,例如:

/usr/local/Cellar/handbrake/1.2.0/bin/HandBrakeCLI -i inputtestfile.mp4 -o outputtestfile.mp4 -z "Preset"

但是,上述方法很不方便,因为每次我将 Handbrake 更新到新版本时,我都必须更新脚本。

如何将路径(我认为这是正确的)添加到脚本中,所以我可以使用:

HandbrakeCLI -i inputtestfile.mp4 -o outputtestfile.mp4 -z "Preset"

谢谢

4

1 回答 1

0

您可以.sh使用以下命令开始脚本:

PATH=$PATH:/usr/local/Cellar/handbrake/1.2.0/bin

是一个环境变量,它影响从何处查找非限定文件名(命令)。

对于不断变化的版本,您可以解析HandBrake --version输出并将其用作变量而1.2.0不是PATH.

于 2019-01-26T13:05:39.150 回答