如何以编程方式在Linux中设置永久环境variables?

我正在为一些软件写一点安装脚本。 它所做的只是解压目标焦油,然后我想永久设置一些环境variables – 主要是解压后的库的位置和更新$ PATH。 我是否需要以编程方式编辑.bashrc文件,例如添加适当的条目,或者有其他的方法吗? 什么是标准做法?

编辑:包中包含许多运行脚本(20+),都使用这些命名的环境variables,所以我需要设置它们(variables名已被select,使得碰撞是极不可能的)

Solutions Collecting From Web of "如何以编程方式在Linux中设置永久环境variables?"

符合LSB(参见规范 )的做法是在/etc/profile.d/文件夹中创建一个shell脚本。

在应用程序之后命名(并确保该名称是唯一的),确保名称以.sh结尾(也可以为其他shell添加脚本),并在脚本中export所需的变量。 该目录中的所有*.sh脚本在用户登录时被读取 – 同时/etc/profilesource d。

请注意,这不是由bash实施的; 相反,这是一个协议。

标准的做法是安装到已经在路径和标准库目录中的目录中,所以不需要更新这些变量。

更新.bashrc是有点容易失败,除其他外, 如果用户使用不同的文件或shell?

您还可以生成并安装设置这些变量的脚本。 然后,您的程序包的用户将获得该脚本或将其内容复制到他们自己的shell init文件中。