shell是什么和shell种类

作者: 罗蓁蓁 | 来源:发表于2017-08-14 18:54 被阅读53次

shell是什么?

Linux系统的shell作为操作系统的外壳,为用户提供使用操作系统的接口。它是命令语言、命令解释程序及程序设计语言。

shell是用户和Linux内核之间的接口程序,如果把Linux内核想象成一个球体的中心,shell就是围绕内核的外层。当从shell或其他程序向Linux传递命令时,内核会做出相应的反应。

shell是一个命令语言解释器,它拥有自己内建的shell命令集,shell也能被系统中的其他应用程序所调用。用户在提示符下输入的命令都由shell先解释然后传给Linux核心。

有一些命令,比如改变工作目录命令cd,是包含在shell内部的。还有一些命令,比如拷贝命令cp和移动命令rm,是存在于文件系统中的某个目录下的单独的程序。对用户来讲,不必关心一个命令是建立在shell内部还是单独的程序。

shell首先检查命令是否是内部命令,若不是再检查是否是一个应用程序,然后shell在搜索路径里寻找这些应用程序。如果键入的命令不是一个内部命令并且在路径里没有找到这个可执行文件,将会显示一条错误信息。如果能够找到命令,该内部命令或应用程序将被分解为系统调用并传给Linux内核。

shell的另一个特性是它自身是一个解释型的程序设计语言,shell程序设计语言支持绝大多数在高级语言中能见到的程序元素,如函数、变量、数组和程序控制结构。

shell的种类?

Linux中的shell有多种类型,其中最常用的几种是bourne shell(sh)、c shell(csh)、korn shell(ksh)。三种shell各有优劣。sh是Unix最初使用的shell,并且在每种Unix上都可以使用。sh在shell编程方面相当优秀,但在处理与用户的交互方面做得不如csh和ksh。

Linux默认的shell是bourne again shell(bash),它与sh完全向后兼容。bash放在bin/bash中,它有许多特色,可以提供如命令补全、命令编辑和命令历史表等功能它还包含了很多csh和ksh中的优点,有灵活和强大的编程接口,同时又有友好的用户界面。

因此,我们至少得知道sh和bash都是Linux上的默认shell,而bash是sh的升级版。

相关文章

  • shell是什么和shell种类

    shell是什么? Linux系统的shell作为操作系统的外壳,为用户提供使用操作系统的接口。它是命令语言、命令...

  • Shell 学习笔记录

    Shell [TOC] Shell 环境 Linux 的 Shell 种类众多,常见的有: Bourne Shel...

  • Shell入门笔记

    本笔记参考 Linux探索之旅 1.什么是Shell 2.Shell种类 3.Shell脚本文件 4.Shell变...

  • shell 简介

    1. shell是什么 Shell英文意思是外壳, 用户通过Shell和操作系统交互,Shell就是一个解释器,在...

  • Power Shell折腾记

    Power Shell是什么 Power Shell(包括Windows Power Shell and Powe...

  • shell-初步+变量

    1.shell初步了解 1.1 什么是Shell 1.2.什么是Shell脚本 1.3. 脚本语言的种类 She...

  • Shell基础入门(一)

    Linux 的 Shell 种类众多,常见的有: Bourne Shell(/usr/bin/sh或/bin/sh...

  • 工具 | Shell 教程笔记 (1)

    Linux 的 Shell 种类众多,常见的有: Bourne Shell(/usr/bin/sh或/bin/sh...

  • Linux Shell(一)

    Shell 命令 Shell是什么? echo $SHELL 环境变量 当前shell的路径 分了两个语系:ba...

  • shell脚本编程基础

    bash中变量的种类 局部变量:生效范围为当前shell进程,对当前shell之外的其它shell进程,包括当前s...

网友评论

    本文标题:shell是什么和shell种类

    本文链接:https://www.haomeiwen.com/subject/hfpurxtx.html