linux添加永久变量,linux中永久性变量和临时变量的设置

在Linux中,变量值按变量的生命周期来划分,可以分为两类,即永久性变量和临时变量。若需要定义永久性变量则需要修改配置文件,而临时变量可以使用export命令声明,所声明的变量在关闭shell时失效。

1.在/etc/profile文件中定义永久性变量

在/etc/profile文件中定义永久性变量对所有的用户都有效,并且是永久性存在的,/etc/profile文件所定义的内容如下:

# /etc/profile

# System wide environment and startup programs, for login setup

# Functions and aliases go in /etc/bashrc

pathmunge () {

if ! echo $PATH | /bin/egrep -q "(^|:)$1($|:)" ; then

if [ "$2" = "after" ] ; then

PATH=$PATH:$1

else

PATH=$1:$PATH

fi

fi

}

# ksh workaround

if [ -z "$EUID" -a -x /usr/bin/id ]; then

EUID=`id -u`

UID=`id -ru`

fi

# Path manipulation

if [ "$EUID" = "0" ]; then

pathmunge /sbin

pathmunge /usr/sbin

pathmunge /usr/local/sbin

fi

# No core files by default

ulimit -S -c 0 > /dev/null 2>&1

if [ -x /usr/bin/id ]; then

USER="`id -un`"

LOGNAME=$USER

MAIL="/var/spool/mail/$USER"

fi

HOSTNAME=`/bin/hostname`

HISTSIZE=1000

if [ -z "$INPUTRC" -a ! -f "$HOME/.inputrc" ]; then

INPUTRC=/etc/inputrc

fi

export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC

for i in /etc/profile.d/*.sh ; do

if [ -r "$i" ]; then

. $i

fi

done

unset i

unset pathmunge

例如,需要在/etc/profile中间中定义对系统所有用户都有效的永久性变量CLAAPATH,就可以用编辑器卡开该文件并使用export命令定义变量export CLAAPATH=${JAVA_HOME}/lib;${JAVA_HOME}/jre/lib

修改/etc/profile文件后,设置的变量在下次启动系统时生效,若想立即生效,运行命令 source /etc/profile

2.在当前用户的.bash_profile文件中定义

在当前用户的.bash_profile文件中定义,只对单用户有效,也就是说属于个人使用的变量。在当前用户下的.bash_profile文件中所定义的变量,

也属于用就像变量,下面是.bash_profile中的内容:

# .bash_profile

# Get the aliases and functions

if [ -f ~/.bashrc ]; then

. ~/.bashrc

fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin

export PATH

unset USERNAME

若想定义变量和上面的方法一致。

3.直接运行export命令定义变量

在终端提示下,可以直接使用命令 “export 变量名=变量值”的形式来定义变量,不过所有的变量只对当前的shell有效,即为临时变量,若关闭shell,所定义的变量就会失效.


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部