Shell 本身是一个用C 语言编写的程序,它是用户使用Linux 的桥梁
Shell 既是一种命令语言,又是一种程序设计语言
作为命令语言,它交互式地解释和执行用户输入的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支
它虽然不是Linux 系统核心的一部分,但它调用了系统核心的大部分功能来执行程序、建立文件并以并行的方式协调各个程序的运行
因此,对于用户来说,shell是最重要的实用程序,深入了解和熟练掌握shell 的特性极其使用方法,是用好Linux 系统的关键
可以说,shell 使用的熟练程度反映了用户对Linux 使用的熟练程度
一、什么是shell 当一个用户登录Linux 系统之后,系统初始化程序init 就为每一个用户运行一个称为shell(外壳)的程序
那么,shell 是什么呢
确切一点说,shell 就是一个命令行解释器,它为用户提供了一个向Linux 内核发送请求以便运行程序的界面系统级程序,用户可以用shell来启动、挂起、停止甚至是编写一些程序
当用户使用Linux 时是通过命令来完成所需工作的
一个命令就是用户和shell 之间对话的一个基本单位,它是由多个字符组成并以换行结束的字符串
shell 解释用户输入的命令,就象DOS 里的command
com 所做的一样,所不同的是,在DOS 中,command
com 只有一个,而在Linux 下比较流行的shell 有好几个,每个shell 都各有千秋
一般的Linux 系统都将bash 作为默认的shell
二、几种流行的shell 目前流行的shell 有 ash、 bash、 ksh、 csh、 zsh 等,你可以用下面的命令来查看你自己的shell 类型: #echo $SHELL $SHELL 是一个环境变量,它记录用