您的当前位置:首页正文

Linux环境变量设置

来源:要发发知识网

环境变量分各个用户和系统全局
命令行切换用户时要带上 - 即

$ su - root

系统级:


  • /etc/profile:
    该文件是用户登录时,操作系统定制用户环境时使用的第一个文件,应用于登录到系统的每一个用户。该文件一般是调用/etc/bash.bashrc文件。
# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).
###########################################################################
if [ "`id -u`" -eq 0 ]; then #Debian root用户(用户ID 0)获得path和其他用户不同。这是因为系统二进制(sbin目录)的位置是保留用于系统管理,必须以root身份运行。其他用户永远不应该运行的。
  PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
else
  PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games"
fi
###########################################################################
export PATH
if [ "$PS1" ]; then
  if [ "$BASH" ] && [ "$BASH" != "/bin/sh" ]; then
    # The file bash.bashrc already sets the default PS1.
    # PS1='\h:\w\$ '
    if [ -f /etc/bash.bashrc ]; then
      . /etc/bash.bashrc
    fi
  else
    if [ "`id -u`" -eq 0 ]; then
      PS1='# '
    else
      PS1='$ '
    fi
  fi
fi
if [ -d /etc/profile.d ]; then
  for i in /etc/profile.d/*.sh; do
    if [ -r $i ]; then
      . $i
    fi
  done
  unset i
fi
###########################################################################
#set java
JAVA_HOME=/usr/local/jdk;export JAVA_HOME
JRE_HOME=/usr/local/jdk/jre;export JRE_HOME
PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
export CLASSPATH=$CLASSPATH:$PATH:$JAVA_HOME/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib:$JRE_HOME/lib:.
  • /etc/bash.bashrc:
    系统级的bashrc文件。
  • /etc/environment:
    在登录时操作系统使用的第二个文件,系统在读取你自己的profile前,设置环境文件的环境变量。
    *****要注销一下才能生效

用户级(这些文件处于用户目录下):


  • ~/.profile:
    每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件。这里是推荐放置个人设置的地方
  • ~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取。不推荐放到这儿,因为每开一个shell,这个文件会读取一次,效率肯定有影响。
  • ~/.bash_profile or ~./bash_login:
    这里没有引用作者的,下面会提到
  • ~/.pam_environment:
    用户级的环境变量设置文件,没有做测试,不知道管不管用。