shell是一个命令解释器,处于内核和用户之间,负责把用户的指令传递给内核并且把执行结果回显给用户
Shell 是一个用C语言编写的程序,它是用户使用Linux的桥梁,同时,shell也可以作为一门强大的编程语言
我们常说的shell是命令行解释器的意思,也有内核上的一层壳的含义
shell常见的几种类型有sh、csh、bash、zsh等提供的脚本支持
shell的功能点在于外部命令的使用,其内部数据处理方面,侧重文本(或者说字符串,或字符流)处理,而对运算和其他基本数据结构的原生较弱(例如常用的array、set、map等等),功能目标在于实现命令自动化,但是呢,实现命令自动化的同时,Shell需要依赖其他程序才能完成大部分的工作,这是它的缺陷也是一个优点吧,但它不容置疑的长处是:简洁的脚本语言标记方式,而且比C语言编写的程序执行更快、更有效率
bash是Linux标准默认的shell,是BourneAgain Shell的缩写,因为bash有很多特性,比如:可以使用类似DOS下面的doskey的功能,用方向键查阅和快速输入并修改命令,自动通过查找匹配的方式给出以某字符串开头的命令,还有就是bash包含了自身的帮助功能,你只要在提示符下面键入help就可以得到相关的帮助,在Linux系统中我们经常看见以:#!/bin/bash开头的文件内容,这就是声明了该文件是一个基于bash的shell编程文件