我正在创建一个 bashscript 来设置我正在编写的一个小应用程序。该设置的一部分需要设置环境变量,以便其他进程可以引用它。
我的简单 shell 脚本测试如下所示:
#!/bin/sh
export FOO=abc
我理解为什么FOO
脚本执行后不可见,如果这样做的话:
$ sh script.sh
以及为什么这会使其可见:
$ source script.sh
所以这是一个解决方法,但我想知道常见的安装脚本是如何做到这一点的 - 例如,我很确定像 mysql 等安装程序确实设置了全局环境变量。
正确的做法是什么?我想我可以要求用户通过运行以下命令进行安装:
$ source script.sh
但不确定是否有更好的方法。
谢谢
答案1
将这些行添加到您的脚本中。您的脚本应该有root
访问权限。
echo 'export FOO=abc' > /etc/profile.d/foo.sh
下次重启即可使用。