吹泡泡的小鱼的个人空间 http://blog.eetop.cn/hyu [收藏] [复制] [分享] [RSS]

日志

(一)Shell 是一种脚本语言

热度 11已有 768 次阅读2019-12-19 14:32 |个人分类:Shell|系统分类:嵌入式

任何代码最终都要被“翻译”成二进制的形式才能在计算机中执行。Shell 就是一种脚本语言,我们编写完源码后不用编译,直接运行源码即可。
编译型语言:
有的编程语言,如 C/C++、Pascal、Go语言、汇编等,必须在程序运行之前将所有代码都翻译成二进制形式,也就是生成可执行文件,用户拿到的是最终生成的可执行文件,看不到源码。这个过程叫做编译(Compile),这样的编程语言叫做编译型语言,完成编译过程的软件叫做编译器(Compiler)。
解释型语言或者脚本语言(Script):
而有的编程语言,如 Shell、JavaScript、Python、PHP等,需要一边执行一边翻译,不会生成任何可执行文件,用户必须拿到源码才能运行程序。程序运行后会即时翻译,翻译完一部分执行一部分,不用等到所有代码都翻译完。这个过程叫做解释,这样的编程语言叫做解释型语言或者脚本语言(Script),完成解释过程的软件叫做解释器。

区别:
(1)编译型语言的优点是执行速度快、对硬件要求低、保密性好,适合开发操作系统、大型应用程序、数据库等。
(2)脚本语言的优点是使用灵活、部署容易、跨平台性好,非常适合 Web 开发以及小工具的制作。

关于shell程序和shell脚本:
Shell程序本身的开发是用C语言编写的,它是用户使用Unix/Linux的桥梁,用户的大部分工作都是通过Shell完成的。
Shell脚本(shell script)是为shell程序编写的脚本程序,有自己的shell脚本语言。
我们通常所说的shell指的是shell脚本的编写,而不是指shell自身程序的开发。
Shell既是一种命令语言,又是一种程序设计语言:
(1)作为命令语言,它交互式地解释和执行用户输入的命令。
(2)作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支。
Shell虽然不是Unix/Linux系统内核的一部分,但它调用了系统核心的大部分功能来执行程序、建立文件并以并行的方式协调各个程序的运行。因此,对于用户来说,shell是最重要的实用程序,深入了解和熟练掌握shell的特性极其使用方法,是用好Unix/Linux系统的关键。

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 注册

关闭

站长推荐上一条 /4 下一条

小黑屋| 关于我们| 联系我们| 在线咨询 |  EETOP 创芯网 ( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2020-1-24 02:32 , Processed in 0.030571 second(s), 9 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

返回顶部