Shell变量

1、  bash配置文件

在每一位用户的宿主目录下运行命令ls .bash*,结果如下:

.bash_history  .bash_logout  .bash_profile  .bashrc<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

这几个文件是用户登录、注销系统时所用到的bash配置文件,具体用处:

l       .bash_history记录了用户以前输入的命令。

l       .bash_logout用户退出shell时要执行的命令。

l       .bash_profile用户登入shell时要执行的命令。

l       .bashrc每次打开新的shell时要执行的命令。

.bash_profile只在会话开始时被读取一次,而.bashrc则在每次打开新的终端时都要被读取。用户需要将定义的变量,如PATH,放到.bash_profile中,而将别名和函数放在.bashrc中。

这些文件是每一位用户的设置,系统级的设置存储在文件/etc/profile/etc/bashrc和目录/etc/profile.d下的文件中。当系统级的设置和用户级的设置冲突时,将采用用户级的设置。

2、  提示符

打开一个控制台,最先看到的就是提示符,如下所示:

[root@it ~]#

默认情况下,提示符将显示用户名、主机名、当前所在目录(在RHEL4中,“~”表示用户的宿主目录),最后一个字符可以标识是普通用户($)还是root管理员(#)。可以通过$PS1来设置提示符,如下命令显示当前设置:

#echo $PS1

[/u@/h /W]/$

3、  改变$PATH

$PATH这个变量决定了shell将到哪些目录中寻找命令或程序。

(1)       所有环境变量都大写,linux系统区分大小写

(2)       变量名有时以$开头,有时又不是,当设置一个变量时,直接用名称,而不需要添加 $,使用如下命令:

#PATH=/usr/bin:/bin:/usr/local/bin:/usr/X11R6/bin

如果要获取变量值,需要在变量名前加$,如下:

#echo $PATH

/usr/bin:/bin:/usr/local/bin:/usr/X11R6/bin

           否则变量名就被当作普通文本了

#echo $PATH

           PATH

(3)       不能只替换变量,而是要将新的字符添加到原来的变量中。大多数情况下,不能用“PATH=/some/directory“,因为这将删除“$PATH”中其他的所有目录,所以应该如下:

#PATH=$PATH:/some/directory

#echo $PATH

/usr/bin:/bin:/usr/local/bin:/usr/X11R6/bin:/some/directory

目前只是设置了当前终端的“$PATH”变量,如果打开一个新的终端,还是以前的设置。因为先前定义的是一个局部环境变量(仅限于当前的终端),要定义一个全局变量,使其在以后打开的终端中也有效,需要用export命令:

#export PATH=$PATH:/some/irectory

为了将目录永久添加到用户的“$PATH“,只要将export的那行添加到用户宿主目录下的“.bash_profile”文件中即可。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章