在linux中,shell是指一个面向用户的命令接口,表现形式就是一个可以由用户录入的界面,这个界面也可以反馈运行信息。Shell是Linux操作系统中的一个解释器程序,它负责接收用户输入的命令并将其传递给内核进行执行。BourneAgainshell(bash)是Linux系统的默认shell。
linuxshell介绍
Linux中的shell,是指一个面向用户的命令接口,表现形式就是一个可以由用户录入的界面,这个界面也可以反馈运行信息;
Shell是一种接口,它连接了用户和内核,使用户能够与系统进行交互操作。它接收用户输入的命令并把它送入内核去执行。是在Linux内核与用户之间的解释器程序,现在Linux通常指/bin/bash解释器来负责向内核翻译以及传达用户/程序指令,shell相当于操作系统的“外壳”
Linux系统提供多种不同的Shell以供选择。在Linux系统中,默认的Shell是BourneAgainShell(bash)。
shell在Linux中的存在形式:
由于Linux不同于Windows,Linux是内核与界面分离的,它可以脱离图形界面而单独运行,同样也可以在内核的基础上运行图形化的桌面。
这样,在Linux系统中,就出现了两种shell表现形式,一种是在无图形界面下的终端运行环境下的shell,另一种是桌面上运行的类似Windows的MS-DOS运行窗口,前者我们一般习惯性地简称为终端,后者一般直接称为shell
linux常用的三种shell
Linux中的shell有多种类型,其中最常用的三种是bourneshell(sh)、cshell(csh)、kornshell(ksh)。
1、Bourneshell
Bourneshell是一个交换式的命令解释器和命令编程语言。

2、cshell
cshell是一种比BourneShell更适合的变种Shell,使用的是“类C”语法,csh是具有C语言风格的一种shell,其内部命令有52个,较为庞大。
Cshell是柏克莱大学(Berkeley)所开发的,且加入了一些新特性,如命令列历程(history)、别名(alias)、内建算术、档名完成(filenamecompletion)、和工作控制(jobcontrol)。对于常在交谈模式下执行shell的使用者而言,他们较喜爱使用Cshell;但对于系统管理者而言,则较偏好以Bourneshell来做命令档,因为Bourneshell命令档比Cshell命令档来的简单及快速。Cshell提示符号的默认值是%。
3、kornshell
kornshell是一个Unixshell。在20世纪80年代早期,DavidKorn在贝尔实验室编写了它。它完全向上兼容Bourneshell并包含了Cshell的很多特性,例如贝尔实验室用户需要的命令编辑。
Kornshell是Bourneshell的超集(superset),由AT&T的DavidKorn所开发。它增加了一些特色,比Cshell更为先进。Kornshell的特色包括了可编辑的历程、别名、函式、正规表达式万用字符(regularexpressionwildcard)、内建算术、工作控制(jobcontrol)、共作处理(coprocessing)、和特殊的除错功能。Bourneshell几乎和Kornshell完全向上兼容(upwardcompatible),所以在Bourneshell下开发的程序仍能在Kornshell上执行。Kornshell提示符号的默认值也是$。在Linux系统使用的Kornshell叫做pdksh,它是指PublicDomainKornShell。
三种shell各有优劣:
ShistheshellinitiallyusedinUnixandcanbeusedoneveryUnixvariant.。尽管sh在shell编程方面表现优异,但在处理与用户的交互方面,其表现还不如csh和ksh。
Bash是Linux默认的shell,与sh完全兼容。bash放在bin/bash中,它有许多特色,可以提供如命令补全、命令编辑和命令历史表等功能它还包含了很多csh和ksh中的优点,有灵活和强大的编程接口,同时又有友好的用户界面。
因此,我们至少得知道sh和bash都是Linux上的默认shell,而bash是sh的升级版。
shell如何执行用户的指令
shell有两种执行指令的方式,第一种方法是用户事先编写一个sh脚本文件,内含shell脚本,而后使用shell程序执行该脚本,这种方式,我们习惯称为shell编程。
第二种形式,则是用户直接在shell界面上执行shell命令,由于shell界面的关系,大家都习惯一行行的书写,很少写出成套的程序来一起执行,所以也称命令行。
总结:shell可以说只是为用户与机器之间搭建成的一个桥梁,让我们能够通过shell来对计算机进行操作和交互,从而达到让计算机为我们服务的目的。
以上就是linuxshell有哪些类型的详细内容,更多请关注主机测评网其它相关文章!
本文来源:国外服务器--linux有几种shell(linux是一种什么软件)
本文地址:https://www.idcbaba.com/guowai/5359.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 1919100645@qq.com 举报,一经查实,本站将立刻删除。



