来源:自学PHP网 时间:2014-11-28 23:06 作者: 阅读:次
[导读] 学习linux Shell脚本编程时,你可能会遇到Shell分类的问题,这里将介绍Shell的几种分类,经过仔细整理,在这里拿出来和大家分享一下。在UNIX l...
Linux shell学习之:unix/linux shell的发展历程学习linux Shell脚本编程时,你可能会遇到Shell分类的问题,这里将介绍Shell的几种分类,经过仔细整理,在这里拿出来和大家分享一下。 在UNIX/linux Shell中主要有这几类shell: ◆Bourne shell (bsh) ◆C shell ( csh) ◆Korn shell ( ksh) ◆Bourne Again shell ( bash) ◆POSIX shell ( sh) ◆TENEX/TOPS C shell ( tcsh) ◆TC Shell(tesh) ◆Z Shell(zsh) ◆Bourne Shell 首个重要的标准Unix Shell是1970年底在V7 Unix(AT&T第7版)中引入的,并且以它的创始科技部基础条件平台“国家气象网络计算应用节点建设”(2004DKA50730)资助者 Stephen Bourne的名字命名。Bourne Shell作为 编程语言是基于Algol语言的,而且主要用于系统管理任务自动化。虽然它由于简单而迅速流行,但缺乏交互式使用的许多特性,如历史、别名和作业控制。 ◆C Shell 20世纪70年代末,在加利福尼亚大学Berkeley 研制的C Shell是作为BSD Unix的一部分发布的。 这种主要由Bill Joy所写的Shell提供了许多标准 Bourne Shell里不提供的附加特征。linux Shell中的C Shell是基于 C编程语言的,而且当用做编程语言时,它使用类似 C语言的语法。它也提供交互使用的增强功能,如命令行历史、别名和作业控制。因为这种Shell是在大型机上设计的,而且加入了大量附加的特征,所以跟linux Shell中的Bourne Shell相比,C Shell在小型机上有运行缓慢的趋势,甚至在大型机上也运行缓慢。 ◆Korn Shell 由于Bo urne Shell和C Shell都可使用,所以现在Unix用户有了选择余地,同时也在选择Shell的问题上产生了困扰。来自AT&T的David Korn于20世纪80年代中期开发了Korn Shell,发布于1996年,并且在1998年正式成为Unix的SVR4分支的组成部分。其实linux Shell中的Bourne Shell的超集Korn Shell,不仅能在Unix系统上运行,而且能在OS/2、VMS和DOS上运行。它提供与Bourne Shell的向上兼容性,增加了许多C Shell的受欢迎的特征,而且快捷有效。AIX使用的是最为广泛使用的1998年版本的Korn Shell。 除了以上提到的3种“标准”Unix Shell外还 有许多其他的Shell也在使用,如: ◆Bourne Again Shell Bourne Again Shell(bash)是GNU计划的一部分,用来替代Bourne Shell。它用于基于GNU 的系统(如Linux)。大多数Linux(Red Hat、Slaekware、Caldera)都以bash作为缺省的Shell,并且运行sh时,其实调用的是bash。 ◆POSIX Shell POSIX Shell是Korn Shell的一个变种。当前提供POSIX Shell的最大卖主是Hewlett—Packard公司。在HP—UX 11.0版本中,linux Shell中的POSIX Shell就是/bin/sh,而bsh是/usr/old/bin/sh。 ◆TC Shell TC Shell(tesh)是C Shell的扩充版本,并完全兼容C Shell,是那些更喜欢C语法的用户可以选择的bash的替代品。 ◆Z Shell Z Shell(zsh)组合了Bourne Ag ain Shell、TCShell和Korn Shell的许多特点,并吸收了一些新特 点。Zsh与Kom Shell最相像。 各主要操作系统下缺省的shell: AIX 下是Korn Shell. Solaris和FreeBSD缺省的是Bourne shell. HP-UX缺省的是POSIX shell. Linux是Bourne Again shell. 如何区分操作系统使用的哪种shell: 在登录进入 Unix/linux后,操作系统使用户处于自己的起始目录(home directory)下运行Shell,当前最常用的Shell有sh、esh和ksh,用户很多时候不需要知道或担心使用的是哪种Shell,可以通过观察 Shell提示符来辨别当前使用的是那种,下面是缺 省的提示符,当然也可以很容易被修改: Bourne Shell使用美元符($); linux Shell中的C Shell使用百分号(%); linux Shell中的Korn Shell使用美元符($). |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com