关于Terminal、Shell和Bash的理解
Terminal
Terminal,终端。终端是计算机和用户交换信息的设备(物理意义上存在)。
Linux下的终端一般是指终端模拟程序,这是与硬件无关的计算机程序。
Shell
介绍
Shell常常运行在终端中,是操作系统内核和用户交互的接口程序,也就是语言翻译器。
命令分类
内建函数
Shell自带的命令。比如cd
命令。
可执行文件
可执行文件提供了Shell不支持的功能,通常需要安装。比如gcc
命令、tree
命令
别名
命令的简称。比如ll
命令实际上是ls -l
的别名。
Bash
Bash,GNU Bourne-Again Shell。Bash是Shell的一种。前面说了Shell是一个计算机程序,根据实现的不同还有很多Shell,比如sh、ksh、rsh、csh等,期中Bash是Linux默认的Shell,常说的Shell编程指的是在某一特定的Shell环境编程,一般指Bash编程。
Reference
https://zh.wikipedia.org/wiki/%E7%B5%82%E7%AB%AF