分类: LINUX
2012-12-03 18:41:22
所謂Shell,就是命令解釋程序,它提供了程序設計接口,可以使用程序來編程。學習Shell對于Linux初學者理解Linux系統是非常重要的。Linux系統的Shell作爲操作系統的外殼,爲用戶提供了使用操作系統的接口。Shell是命令語言、命令解釋程序及程序設計語言的統稱,是用戶和Linux内核之間的接口程序。如果把Linux内核想象成一個球體的中心,Shell就是圍繞内核的外層。當從Shell或其它程序向Linux傳遞命令時,内核會做出相應的反應。Shell在Linux系統的作用和MS DOS下的COMMAND.COM和Windows 95/98 的 explorer.exe相似。Shell雖然不是系統核心的一部分,隻是系統核心的一個外延,但它能夠調用系統内核的大部分功能。因此,可以說Shell是Unux/Linux最重要的實用程序。
Linux中的Shell有多種類型,其中最常用的是Bourne Shell(sh)、C Shell(csh)和Korn Shell(ksh)。大多數Linux發行版本缺省的Shell是Bourne Again Shell,它是Bourne Shell的擴展,簡稱bash,與Bourne Shell完全向後兼容,并且在Bourne Shell的基礎上增加了很多特性。bash放在/bin/bash中,可以提供如命令補全、命令編輯和命令曆史表等功能。它還包含了很多C Shell和Korn Shell中的優點,有靈活和強大的編程接口,同時又有很友好的用戶界面。Linux系統中200多個命令中有40個是bash的内部命令,主要包括exit、less、lp、kill、 cd、pwd、fc、fg等