老男孩教育专注IT教育10余年,只培养IT技术精英

全国免费咨询电话(渠道合作):400-609-2893

Linux系统中shell都有哪些类型?

老男孩IT教育

常见问题

2023年6月5日 14:22

在Linux中,shell是指一个面向用户的命令接口,表现形式就是一个可以由用户录入的界面,这个界面也可以反馈运行信息。Shell是Linux操作系统中的一个解释器程序,它负责接收用户输入的命令并将其传递给内核进行执行。

  在Linux中,shell是指一个面向用户的命令接口,表现形式就是一个可以由用户录入的界面,这个界面也可以反馈运行信息。Shell是Linux操作系统中的一个解释器程序,它负责接收用户输入的命令并将其传递给内核进行执行。

Linux shell

  shell是一种接口,它连接了用户和内核,使用户能够与系统进行交互操作。它接收用户输入的命令并把它送入内核去执行。是在Linux内核与用户之间的解释器程序,现在Linux通常指/bin/bash解释器来负责向内核翻译以及传达用户/程序指令,shell相当于操作系统的“外壳”

  Linux系统提供多种不同的Shell以供选择。在Linux系统中,默认的Shell是Bourne Again Shell(bash)。

  linux常用的三种shell:

  Linux中的shell有多种类型,其中最常用的三种是bourne shell(sh)、c shell(csh)、korn shell(ksh)。

  1、Bourne shell

  Bourne shell 是一个交换式的命令解释器和命令编程语言。

  Bourne shell曾作为管理系统的常用工具,是UNIX操作系统的标准shell。大部份的系统管理命令文件,例如 rc start、stop 与shutdown 都是Bourne shell 的命令档,且在单一使用者模式(single user mode)下以 root 签入时它常被系统管理者使用。Bourne shell因其简洁高效而闻名,它是由AT&T开发的。 Bourne shell 提示符号的默认值是 $。

  2、c shell

  c shell是一种比 Bourne Shell更适合的变种 Shell,使用的是“类C”语法,csh是具有C语言风格的一种shell,其内部命令有52个,较为庞大。

  C shell 是柏克莱大学(Berkeley)所开发的,且加入了一些新特性,如命令列历程(history)、别名(alias)、内建算术、档名完成(filename completion)、和工作控制(job control)。对于常在交谈模式下执行 shell 的使用者而言,他们较喜爱使用 C shell;但对于系统管理者而言,则较偏好以 Bourne shell 来做命令档,因为 Bourne shell 命令档比 C shell 命令档来的简单及快速。C shell 提示符号的默认值是 %。

  3、korn shell

  korn shell是一个 Unix shell 。在20世纪80年代早期,David Korn在贝尔实验室编写了它。它完全向上兼容 Bourne shell 并包含了 C shell 的很多特性,例如贝尔实验室用户需要的命令编辑。

  Korn shell 是Bourne shell 的超集(superset),由 AT&T 的 David Korn 所开发。它增加了一些特色,比 C shell 更为先进。Korn shell 的特色包括了可编辑的历程、别名、函式、正规表达式万用字符(regular expression wildcard)、内建算术、工作控制(job control)、共作处理(coprocessing)、和特殊的除错功能。Bourne shell 几乎和 Korn shell 完全向上兼容(upward compatible),所以在 Bourne shell 下开发的程序仍能在 Korn shell 上执行。Korn shell 提示符号的默认值也是 $。在 Linux 系统使用的 Korn shell 叫做 pdksh,它是指 Public Domain Korn Shell。

  老男孩教育Linux运维云计算课程汇集了虚拟化、云计算、安全攻防、Python开发、SRE等技术,课堂效率高、内容丰富全面,由浅入深,循序渐进,帮助学员稳扎稳打,夯实基础,在有限的时间内帮助学员高效提升,成为符合企业需求的技术型人才。

  推荐阅读:

  Linux下查找文件的命令是什么?

  通过6个示例带你掌握Linux sed命令!

  Linux系统如何把时间类型值转换为数值型?

本文经授权发布,不代表老男孩教育立场。如若转载请联系原作者。