美文网首页
3-1 Shell概念

3-1 Shell概念

作者: 陈小陌丿 | 来源:发表于2016-09-08 09:26 被阅读0次

什么是Shell?

  • Shell本身是一个用C语言编写的程序,它是用户使用Unix/Linux的桥梁,用户的大部分工作都是通过Shell完成的。
  • Shell脚本是解释执行的,不需要编译,Shell程序从脚本中一行一行读取并执行这些命令,相当于一个用户把脚本中的命令一行一行敲到Shell提示符下执行。
  • Shell既是一种命令语言,又是一种程序设计语言
    • 作为命令语言,它交互式地解释和执行用户输入的命令;
    • 作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支。
  • Shell脚本的拓展名是 .sh

Shell有两种执行命令的方式:

  • 交互式(Interactive):解释执行用户的命令,用户输入一条命令,Shell就解释执行一条。
  • 批处理(Batch):用户事先写一个Shell脚本(Script),其中有很多条命令,让Shell一次把这些命令执行完,而不必一条一条地敲命令。

几种常见的Shell

Unix/Linux上常见的Shell脚本解释器有bash、sh、csh、ksh等,习惯上把它们称作一种Shell。我们常说有多少种Shell,其实说的是Shell脚本解释器。

<br />

bash

bash是Linux标准默认的shell,本教程也基于bash讲解。bash由Brian Fox和Chet Ramey共同完成,是BourneAgain Shell的缩写,内部命令一共有40个。

Linux使用它作为默认的shell是因为它有诸如以下的特色

可以使用类似DOS下面的doskey的功能,用方向键查阅和快速输入并修改命令。
自动通过查找匹配的方式给出以某字符串开头的命令。
包含了自身的帮助功能,你只要在提示符下面键入help就可以得到相关的帮助。

sh

sh 由Steve Bourne开发,是Bourne Shell的缩写,sh 是Unix 标准默认的shell。

ash

ash shell 是由Kenneth Almquist编写的,Linux中占用系统资源最少的一个小shell,它只包含24个内部命令,因而使用起来很不方便。

csh

csh 是Linux比较大的内核,它由以William Joy为代表的共计47位作者编成,共有52个内部命令。该shell其实是指向/bin/tcsh这样的一个shell,也就是说,csh其实就是tcsh。

ksh

ksh 是Korn shell的缩写,由Eric Gisin编写,共有42条内部命令。该shell最大的优点是几乎和商业发行版的ksh完全兼容,这样就可以在不用花钱购买商业版本的情况下尝试商业版本的性能了。

注意:bash是 Bourne Again Shell 的缩写,是linux标准的默认shell ,它基于Bourne shell,吸收了C shell和Korn shell的一些特性。bash完全兼容sh,也就是说,用sh写的脚本可以不加修改的在bash中执行


相关文章

  • 3-1 Shell概念

    什么是Shell? Shell本身是一个用C语言编写的程序,它是用户使用Unix/Linux的桥梁,用户的大部分工...

  • 【生物信息笔记】shell 脚本 (dry-2)

    shell 和 shell script(脚本)区别: shell 和 shell 脚本是两个不同概念,shell...

  • Bash

    主要概念 Linux默认的shell是bash Shell bash Shell 可以交互使用,或者作为一种强大的...

  • Linux学习-shell

    1.Shell概述 (1)Shell概念 (2)Shell分类 举例: 2.脚本执行方式 举例1: 举例2: 举例...

  • linux之shell、bash、source和sh的区别

    shell 首先说下shell shell其实是和kernel相对的概念在linux中 kernel属于系统内核 ...

  • Shell编程-13-子Shell和Shell嵌套

    什么是子Shell     子Shell的概念其实是贯穿整个Shell的,如果想要更好的理解和写Shell脚本则必...

  • Shell

    Shell 的概念 Shell本身是一个用C语言编写的程序,它是用户使用Linux/Unix的桥梁。Shell既是...

  • (转载)倒排索引基础知识

    1.单词——文档矩阵 单词-文档矩阵是表达两者之间所具有的一种包含关系的概念模型,图3-1展示了其含义。图3-1的...

  • Shell 相关概念

    Shell Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell既是一种命令语言...

  • Shell 初步探索

    Shell概念 Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命...

网友评论

      本文标题:3-1 Shell概念

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