Linux用户自定义变量
《Linux一线运维实战》清华大学出版社,即将出版
关于用户自定义的变量,有临时的也有永久性的。
对于定义的临时变量,可以直接在终端窗口中执行命令来赋值就可以引用(这个值可以是空),如在之前说过终端命令输出乱码时可以在当前终端中执行LANG=EN或LANG=CN来临时定义当前工作窗口使用的语言类型(其中,LANG是环境变量的名称,EN或CN是它的值)。
关于用户自定义的永久性变量,可在系统提供的配置文件/etc/profile和用户主目录下的隐藏文件.bash_profile文件设置,在这两个配置文件中设定义变量时要在环境变量时每个环境变量都是以独立的一行存在,且每个环境变量的前面要使用export命令。
以下是root用户主目录下的.bash_profile文件的配置信息及在该文件中定义的LANG=EN环境变量的信息(就是加粗的字体)。
#.bash_profile
#Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
#User specific environment and startup programs
PATH=
P
A
T
H
:
PATH:
PATH:HOME/bin
export PATH
export LANG=EN
更改该文件后需要执行source命令来重新加载该配置文件,这种加载方式可以立即生效。
[root@system ~]# source .bash_profile
另外,如果是在/etc/profile文件中定义环境变量时,如果这些环境变量是一个脚本,则就不需要使用export命令,如下是该配置文件的信息(已经省略部分内容的输出)及定义一个oracle用户打开的文件数(加粗的字体是加入的配置)。
#/etc/profile
……
HOSTNAME=/usr/bin/hostname 2>/dev/null
HISTSIZE=1000
if [ “$HISTCONTROL” = “ignorespace” ] ; then
export HISTCONTROL=ignoreboth
else
export HISTCONTROL=ignoredups
fi
export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL
#By default, we want umask to get set. This sets it for login shell
#Current threshold for system reserved uid/gids is 200
#You Could check uidgid reservation validity in
#/usr/share/doc/setup-*/uidgid file
if [ $UID -gt 199 ] && [ “id -gn
” = “id -un
” ]; then
umask 002
else
umask 022
fi
for i in /etc/profile.d/*.sh ; do
if [ -r “
i
"
]
;
t
h
e
n
i
f
[
"
i" ]; then if [ "
i"];thenif["{-#*i}” != “
−
"
]
;
t
h
e
n
.
"
-" ]; then . "
−"];then."i”
else
. “$i” >/dev/null
fi
fi
done
unset i
unset -f pathmunge
if [ $USER = “oracle” ]; then
if [ $SHELL = “/bin/bash” ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
更改该文件后同样需要执行source命令来重新加载该配置文件。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。