如何为单个程序一致地设置环境变量?

如何为单个程序一致地设置环境变量?

LC_TIME="en_AU.UTF-8"一般都在用,对此我很满意。然而,当我使用 Thunderbird 时,我希望它使用 12 小时制。我已经创建了一个自定义区域设置,如果我使用以下命令启动 Thunderbird,它可以正常工作

LC_TIME=en_AU_12h.utf8 /usr/bin/thunderbird

但是,我可以让 Thunderbird 默认启动吗?在我看来,我必须进行一些修改。

  • 我有时从桌面环境启动 Thunderbird,所以我必须修改thunderbird.desktop.
  • 我有时从命令行启动 Thunderbird,所以我必须将更改后的命令放入我的$PATH,也许/usr/local/bin/thunderbird
  • 我有一个自定义脚本可以同时启动多个程序,因此也必须对其进行修改。

有没有办法更改 Thunderbird 的默认环境变量,这样我就不必更改这么多文件?

答案1

通常的方法是创建一个脚本,将二进制文件作为脚本的一部分进行调用。然后你可以在脚本中设置变量。事实上,复杂程序对应的可执行文件这样设置的情况并不少见。例如chromium。因此,如果/usr/bin/thunderbird还不是脚本(检查),您可以创建一个名为/usr/bin/thunderbirdor Maybe的脚本/usr/local/bin/thunderbird,并让它调用原始thunderbird可执行文件。当然,您必须重命名原始文件thunderbird才能正常工作

相关内容