大发三分彩
 

杭州千锋老师带你了解Linux

   日期:2019-09-06 11:41     浏览:29    评论:0    
核心提示:计算机上的大多数日常工作任务,通过鼠标点击即可完成,但要想真正发挥Linux本身的威力,还需要Shell和命令行。Shell就如同编辑器一样,你可以根据个人爱好选择。虽然不同的Shell可以提供不同的功能,但是它们的核心开发思想都是一致的。今天,就让千锋老师带你了解Shell吧!现在让我们来追寻Shell的发展足迹,并探讨几个现在流行的Shell。Shell的历史Shell也称命令行解释器,有着悠久的历史,我们从第一个UNIX Shell说起。V6 Shell1971年,贝尔实验室的Ken Thompso


 

计算机上的大多数日常工作任务,通过鼠标点击即可完成,但要想真正发挥Linux本身的威力,还需要Shell和命令行。Shell就如同编辑器一样,你可以根据个人爱好选择。虽然不同的Shell可以提供不同的功能,但是它们的核心开发思想都是一致的。今天,就让千锋老师带你了解Shell吧!

 

现在让我们来追寻Shell的发展足迹,并探讨几个现在流行的Shell

 

Shell的历史

 

Shell也称命令行解释器,有着悠久的历史,我们从第一个UNIX Shell说起。

 

V6 Shell

 

1971年,贝尔实验室的Ken ThompsonUNIX开发了第一个Shell——V6 Shell。类似于它在Multics上的前身,V6 Shell/bin/sh)是一个在内核之外执行的独立的用户程序。

 

诸如通配符(模式匹配参数扩展,如*.txt)之类的概念在独立的glob实用程序中实现,如同if命令评估条件表达式一样。这种实现保证了Shell的短小精悍,它只有不到900行的C源代码。

 

V6 Shell引入了一系列简洁的语法,用于重定向(< >>>)和管道(|^),并一直沿用至今。你也会发现,它提供了对顺序调用命令(;)和异步命令(&)的支持。

 

Thompson Shell(即V6 Shell)的缺陷在于脚本编程能力的不足,它只是一个交互性的命令解释器。

 

Bourne Shell

 

1977年,Stephen Bourne在贝尔实验室为V7 UNIX开发了Bourne Shell,并一直沿用至今。很多情况下,它甚至是默认的ShellBourne Shell是用C语言开发的,但相比其他Shell,其语法更类似于算法语言(ALGOL)。

 

1978年,Bill Joy还在加州大学伯克利分校读书的时候,就为BSD UNIXBerkeley Software Distribution UNIX)开发了C Shell

 

五年之后,C Shell引入了Tenex系统中的一些功能,如命令行编辑功能和文件名和命令自动补全功能。Tenex C shelltcsh)保持了对csh的向后兼容,并且提升了整体的交互性,它是Ken Greer在卡内基-梅隆大学开发出来的。

 

C Shell的一个主要设计目标就是创建一种语法类似于C语言的脚本语言,因为C语言在当时非常流行,而且UNIX是用C来开发的。

 

Bill JoyC Shell中引入的另一个重要特性是命令历史记录。此功能可以保留之前执行的命令的历史记录,并允许用户查看并选择执行之前的命令。

 

这些Shell之间的一个关键区别是它们使用了不同的授权。Bash是一个GNU项目,遵循GPL授权,而C Shell则遵循了BSD许可,Korn Shell则遵循了通用公共许可证。

 

早期Shell的许多理念和接口在35年之后依然保持不变,这对其作者是一个巨大的肯定。任何一个行业都在不断重塑自我,Shell也在发生着历史的变迁。尽管许多新的Shell被开发出来,但Bourne Shell及其后继者依然是现在的首选。

 

想了解更多LinuxShell的相关知识,尽在千锋教育。

 

千锋教育:http://www.mobiletrain.org/

千锋杭州校区:http://hz.mobiletrain.org/

杭州校区地址:浙江省杭州市江干区九堡旺田书画城A4

培训咨询专线:0571-86893632  010-82790226-801

   QQ  : 1660794050

面授课程:全栈WEB+培训、全链路设计培训、PHP全栈+服务器集群培训、J待删除信息aEE+分布式开发培训、大数据+人工智能培训、 Unity游戏开发培训、Python培训、云计算+Python运维培训、全栈软件测试培训、Android培训、iOS培训

 

 

免责声明:以上信息由北京千锋互联科技有限公司 沈阳分公司整理发布,内容的真实性、准确性和合法性由该企业负责

公司名称:北京千锋互联科技有限公司 沈阳分公司
联系人:李老师
联系电话:  4008119990
公司地址:北京市海淀区宝盛北里西区28号天丰利商城4层
 
 
更多>相关资讯