学科分类
目录
Linux编程

Shell的分类

Shell的种类很多,常见的有:BSh、CSh、KSh、bash等。表1中对常见的Shell做了简单说明。

表1 Shell分类

shell名称 说明
BSh Bash Shell是Bourne Shell的一个免费版本,是最早的Unix Shell,包括许多附加的特点,是一个交换式的命令解释器和命令编程语言。
CSh C Shell中使用“类C”语法,借鉴了Bourne Shell的许多特点,新增了命令历史、别名、文件名替换等功能。
KSh Korn Shell的语法与Bourne Shell相同,同时具备了C Shell的交互特性,因此广受用户青睐。
bash Bourne Again Shell,即bash,是GNU计划的一部分,用于GNU/Linux系统,大多数Linux都以bash作为缺省的shell。

Linux系统中可以同时安装多种Shell,但不同Shell的语法略有不同,不能交换使用。每个Linux系统中默认都会安装Shell,在系统启动时,默认会进入shell,此时可以通过查看etc目录下的shells文件的内容;也可以通过ls命令查看bin路径下的shell文件,来查看系统中安装的shell,如下所示。

[itheima@localhost ~]$ ls /bin/*sh
/bin/bash /bin/csh /bin/dash /bin/sh /bin/tcsh

命令“ls /bin/sh”中的“”是通配符,表示任意个字符。

通过以下命令可以查看系统中安装的Shell的版本号。下面以Bash Shell为例。

[itheima@localhost ~]$ /bin/bash --version
GNU bash, version 4.1.2(1)-release (x86_64-redhat-linux-gnu)
Copyright (C) 2009 Free Software Foundation, Inc.

若以普通用户进入Shell,则命令提示符为“$”;若以管理员身份进入Shell,则命令提示符为“#”。每种Shell都有其特色,通常掌握一种Shell即可。本章将以Bash为主进行讲解。

点击此处
隐藏目录