我正在使用 zenity 编写脚本。但是 zenity 3.4.0 有一个错误(已在最新的 Ubuntu 版本中修复),它返回退出代码 139,而不是 0 或 1。但我需要在错误仍然存在的情况下使用它。
因此解决方案是捆绑自定义 zenity 可执行文件。但是如何在脚本中使用自定义命令覆盖 zenity 命令?
答案1
要使用自定义的 zenity 可执行文件而不是系统默认文件,我们可以将其放在目录中,并将该目录添加到PATH
.
假设我将可执行文件放在一个目录中$bindir
。
然后我可以添加$bindir
到PATH
变量。
export PATH="$bindir:$PATH"
注意,我们需要$bindir
在 之前添加$PATH
,否则它不会覆盖系统可执行文件。因为在 中PATH
,前面的可执行文件具有更高的优先级。
答案2
使用完整路径调用它,例如
/opt/myapp/bin/zenity
如果您的 zenity 版本安装在/opt/myapp/bin/
。
您可能希望为此使用一个变量,例如
ZENITY=/opt/myapp/bin/zenity
...
$ZENITY --question --text 'Reboot universe?'