【问题标题】:How to execute HandbrakeCLI from script?如何从脚本执行 HandbrakeCLI?
【发布时间】:2019-01-26 12:45:13
【问题描述】:

我正在尝试执行一个运行 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"

谢谢

【问题讨论】:

    标签: macos shell path command-line-interface handbrake


    【解决方案1】:

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

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

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

    对于更改版本,您可以解析HandBrake --version 输出并将其用作变量,而不是PATH 中的1.2.0 字符串。

    【讨论】:

    • 感谢您的帮助。一些帮助我使用“/usr/local/bin/HandBrakeCLI”解决它
    • 不客气;但是您确定该文件不是上述路径的符号链接(仍会受到版本控制的影响)?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-03-03
    • 2016-08-14
    • 2020-03-27
    • 2023-03-20
    • 2011-07-16
    • 2013-12-17
    • 2016-10-19
    相关资源
    最近更新 更多