环境变量配置文件及变量PATH

通常情况下,用户登录系统时,bash首先执行/etc/profile配置文件和/etc/profile.d/目录下的配置文件,这些配置文件对系统的所有用户都有效,它们设置了普遍性的环境变量.然后,bash会执行登录用户主目录下的.bashrc和.bash_profile文件,通过这两个配置文件设置用户个性化的环境变量,并且可以重复设置前面配置文件中设置的选项,覆盖它们的设置值.用户主目录下面的.bashrc文件会执行/etc/bashrc文件来完成环境变量的设置.
用户主目录下的.bash_profile设置为每次登录时执行,而.bashrc则被设置为在每次打开新的终端时执行,即打开新的终端而不需要重新,接受初始登录环境变量.
如果用户需要添加或修改某个环境变量,使其每次登录时都会存在和具有用户指定的值,则需要修改该用户主目录下的.bashrc文件.但是以其它用户身份登录后,则不会有这个环境变量的存在,这是因为,在上面修改的仅仅是前面用户私有的shell环境配置文件.如果需要使这个环境变量的修改对所有的用户都有效,只需要以root的身份修改/etc/profile文件.
PATH变量决定了shell将到哪些目录中寻找命令或程序.如果要执行的命令的目录在$PATH中,用户就不必输入这个命令的完整路径,直接输入命令就可以了(如果有".路径"可执行文件也可以直接执行,而不需要在其前面加./了.可以这样设置:
1、在/etc/profile末添加PATH=$PATH:.
export PATH
2、. /etc/profile

~/.profile 是在用户的主目录下的一个文件,每次用户登陆都会执行这里边的ENV环境变量设置。
/etc/profile是一个全局的环境变量设置,只要登陆系统的用户都会执行里面的ENV环境变量设置
~/.kshrc是在用户的主目录下面的,每次执行KSH下面的子shell的时候,都会执行这里面的ENV环境变量设置。
~/.dtprofile是在用户的主目录下面的,在这里设置你进入CDE时的一些变量设置,如果用户没有通过CDE进入过系统,那么将不会产生这个文件,只有用户曾经用CDE进入过系统后就会自动生成一个.dtprofile文件,然后还可以对里边的变量进行设置。。
如果在这个文件里的DTSOURCEPROFILE的变量设置为true则会读取用户瞩目路下的.profile文件里的变量设置,如果没有这个变量或者设置为false,那么将不读取.profile里的环境变量。

如果想让刚刚改变的.profile .kshrc里面的设置马上生效使用,可以使用以下的命令:
. ~/.profile
. ~/.kshrc


相关主题
相关文档
最新文档