Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口。它接收用户输入的命令并把它送入内核去执行。

         实际上Shell是一个命令解释器,它解释由用户输入的命令并且把它们送到内核。不仅如此,Shell有自己的编程语言用于对命令的编辑,它允许用户编写由shell命令组成的程序。Shell编程语言具有普通编程语言的很多特点,比如它也有循环结构和分支控制结构等,用这种编程语言编写的Shell程序与其他应用程序具有同样的效果。  

          在将Fedora安装完成后,输入ifconfig或者ping之类的命令,系统提示说命令找不到,这说明环境变量没有设置好,像这些命令是在sbin目录下的。通过set命令查看环境变量,发现在PATH中确实是没有包含sbin路径。因此就需要修改环境变量。进入到/etc/profile中,进行如下操作:

        pathmunge /sbin

        pathmunge /usr/sbin

        pathmunge /usr/local/sbin

这几句话中的if 语句和对应的fi去掉,也就是说这几个路径肯定是要设置的。

与环境变量相关的文件可能还会有/etc/bashrc等,不过这是shell变量,是局部的,对于特定的shell器作用。/etc/profile是全局的,适用于所有的shell

profile文件会告诉shell使用什么语言,什么shell,命令的搜索路径等等。

一些标准的环境变量:

SHELL 默认shell

LANG 默认语言

PATH linux寻找命令的默认路径,一般包括/bin,/usr/bin,/sbin,/usr/sbin,

/usr/X11R6/bin,/opt/bin,/usr/local/bin等。用户可以自行添加,

/home/bin.

MANPATH man手册的默认路径

INPUTRC 默认键盘映象,详见/etc/inputrc

BASH_ENV bash shell的环境变量,通常在~/.bashrc

DISPLAY X窗口适用的控制台,DISPLAY=0对应于控制台F7,DISPLAY=1对应于控制

F8,DISPLAY=server0向远程计算机发送GUI应用程序。

COLORTERM GUI中的默认终端,通常是gnome-terminal

USER 自动设置当前登陆用户的用户名。

LONGNAME 通常设置为$USER

MAIL 设置特定$USR的标准邮件目录

HOSTNAME 设置为/bin/hostname的命令输出

HISTSIZE 设置为history命令记住的命令数

例子:

#

# /etc/profile

#

 

#修改或添加PATH可以自定义命令的寻找路径,如果你不想将可执行文件添加到默认目录中但又可以在终端中使用命

#令,那就改吧。

export PATH="/bin:/usr/bin:/sbin:/usr/sbin:/usr/X11R6/bin:/opt/bin:/usr/local/bin"

 

export MANPATH="/usr/man:/usr/X11R6/man"

export LESSCHARSET="latin1"

export INPUTRC="/etc/inputrc"

export LESS="-R"

 

# Locale settings (find your locale with ''locale -a'')

export LANG="zh_CN" #修改这里可以改变系统的默认使用语言

export LC_COLLATE="C"

 

export COLUMNS LINES

 

export PS1=''[\u@\h \W]\$ ''

export PS2=''> ''

 

umask 022

……

……

# End of file