关闭

shell到底是什么?

标签: shelllinuxshell编程bash
420人阅读 评论(0) 收藏 举报
分类:

说到Linux,不得不提shell,大家都知道“shell是命令解析器“,单凭这一句话,我们其实很难知道shell到底是什么,下面我们就从四个方面对shell做一个更加透明的介绍。
关于详细介绍,请参考:http://baike.baidu.com/subview/849/15831672.htm

【一】shell的含义:
首先shell的英文含义是“壳”;它是相对于内核来说的,因为它是建议在核的基础上,面向于用户的一种表现形式,比如我们看到一个球,见到的是它的壳,而非核。

Linux中的shell,是指一个面向用户的命令接口,表现形式就是一个可以由用户录入的界面,这个界面也可以反馈运行信息。

【二】shell在Linux中的存在形式:
由于Linux不同于Windows,Linux是内核与界面分离的,它可以脱离图形界面而单独运行,同样也可以在内核的基础上运行图形化的桌面。
这样,在Linux系统中,就出现了两种shell表现形式,一种是在无图形界面下的终端运行环境下的shell,另一种是桌面上运行的类似Windows 的MS-DOS运行窗口,前者我们一般习惯性地简称为终端,后者一般直接称为shell。

【三】shell如何执行用户的指令

shell有两种执行指令的方式:

  • 一种方法是用户事先编写一个sh脚本文件,内含shell脚本,而后使用shell程序执行该脚本,这种方式,我们习惯称为shell编程。
  • 第二种形式,则是用户直接在shell界面上执行shell命令,由于shell界面的关系,大家都习惯一行行的书写,很少写出成套的程序来一起执行,所以也称命令行。

【四】shell的类型

Unix中shell主要有以下几种类型:

  • Bourne shell (包括 sh,ksh,and bash)
  • Bourne shell (sh)
  • Korn shell (ksh)
  • Bourne Again shell (bash)
  • POSIX shell (sh)
  • C shell (包括 csh and tcsh)
  • C shell (csh)
  • TENEX/TOPS C shell (tcsh)
    其中,bash是linux中默认的shell。

注:因为shell的类型有很多,所以在进行shell编程时,首先需要知道是哪种类型的shell。例如:会bash编程的人不一定会csh编程。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:120895次
    • 积分:2601
    • 等级:
    • 排名:第14051名
    • 原创:143篇
    • 转载:36篇
    • 译文:1篇
    • 评论:22条
    博客专栏
    最新评论