嵌入式学习小组
直播中

励黎

7年用户 130经验值
私信 关注

Shell是什么?

任何代码最终都要被“翻译”成二进制的形式才能在计算机中执行。Shell 就是一种脚本语言,我们编写完源码后不用编译,直接运行源码即可。


回帖(3)

张淑珍

2020-12-18 16:44:37
编译型语言:
有的编程语言,如 C/C++、Pascal、Go语言、汇编等,必须在程序运行之前将所有代码都翻译成二进制形式,也就是生成可执行文件,用户拿到的是最终生成的可执行文件,看不到源码。这个过程叫做编译(Compile),这样的编程语言叫做编译型语言,完成编译过程的软件叫做编译器(Compiler)。
举报

赵群山

2020-12-18 16:44:47
解释型语言或者脚本语言(Script):
而有的编程语言,如 Shell、JavaScript、Python、PHP等,需要一边执行一边翻译,不会生成任何可执行文件,用户必须拿到源码才能运行程序。程序运行后会即时翻译,翻译完一部分执行一部分,不用等到所有代码都翻译完。这个过程叫做解释,这样的编程语言叫做解释型语言或者脚本语言(Script),完成解释过程的软件叫做解释器。
区别:
(1)编译型语言的优点是执行速度快、对硬件要求低、保密性好,适合开发操作系统、大型应用程序、数据库等。
(2)脚本语言的优点是使用灵活、部署容易、跨平台性好,非常适合 Web 开发以及小工具的制作。
举报

李青妍

2020-12-18 16:46:02
关于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系统的关键。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分