什么是Shell?
Shell是系统的用户界面,提供了用户与内核进行交互的一种接口(命令解释器),Shell接收用户输入的命令并把他送入内核执行,在用户与系统之间进行交互。Shell在整个Linux中具有极其重要的地位。
Shell是一个用C语言编写的程序,它是用户使用Linux的桥梁
Shell的功能:
命令解释器是Shell最重要的功能。Linux系统中所有的可执行文件都可以作为Shll来执行
常见Linux中可执行的文件类
类别 | 说明 |
---|---|
Linux命令 | 存放在 /bin、/sbin 目录下的命令 |
内置命令 | 出于效率的考虑,将一些命令的解释程序构造在Shell内部 |
实用程序 | 存放在/usr/bin、/usr/sbin、/usr/local/bin、/usr/local/sbin 等目录下的实用程序 |
用户程序 | 用户程序经过编译生成可执行文件后可作为Shell命令运行 |
Shell脚本 | 由Shell脚本编写的批处理文件 |
常见的Shell版本如下:
bash:多数Linux系统的默认Shell,包含了ksh的优点,接口强大,界面友好。
ksh:由Dava Kom编写,是UNIX系统上的标准Shell。
tcsh:C Shell的拓展
Shell的元字符:
-
? 代表任意字符代表任意字符串
. 代表根目录或作为路径间隔符使用
\ 转义字符。当命令的参数要用到保留字时,要在保留字前面加上转义字符
<Enter> 续行符。可以使用续行符将一个命令行分写在多行上
$ 变量值置换,如SPATH表示环境变量PATH的值
’ 在’.…’.中间的字符均被当作文字处理,指令、文件名、保留字等都不再具有原来的意义