shell 的优缺点
作为一个命令解释器,shell(计算机壳层)能够将用户的指令传递给内核并把执行结果反馈给用户,shell 位于内核和用户之间,可以作为一种编程语言使用。shell 处理内部数据时比较侧重文本处理,对于运算和其他基本数据结构的原生较弱。与 c 语言编写的程序相比,shell 有着脚本语言标记方式简洁的优势,能够更快执行,效率更高。但 shell 在实现命令自动化的同时,需要依赖其他程序才能完成大部分工作。
shell 的用途
shell 可以用来执行计算机程序,还可以与计算机直接进行交互。在 UEFI 环境下,EFI 的 shell 环境提供了一组丰富的扩展和增强的命令,今后的计算机环境中,shell 环境也会取代传统的 DOS 界面,到时支持 shell 的环境中将不会再出现任何的 .exe 文件,文件后缀将全部变更为 .efi。在shell环境中分为 IA-32 和 x64,shell 环境中 32 位的 *.efi 文件无法在 x64 的计算机中运行。
shell 的分类

交互式 shell
交互式 shell 会等待用户输入命令,并对提交的命令进行执行,用户可以先进行登录,再对命令进行执行,执行后可以签退,当用户签退后 shell 也会终止。

非交互式 shell
非交互式模式中的 shell 不会与用户进行交互,用户无需输入命令,shell 会直接读取存放在文件中的命令,并对命令进行执行,当命令读取到结尾时,shell 就会终止。