shell与Linux命令有什么区别?它们之间有联系吗?

Posted 老男孩IT教育

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell与Linux命令有什么区别?它们之间有联系吗?相关的知识,希望对你有一定的参考价值。

  众所周知,shell是运行在Linux系统上的一个脚本语言,是每个运维人员必须掌握的知识;而我们在使用Linux系统的时候,必须通过命令来操作,那么shell脚本语言与Linux命令有什么联系?它们之间的区别是什么?这篇文章为大家讲解一下。

  shell翻译成壳的意思,它是包裹在Linux内核外层的,一个可通过一系列的Linux命令对操作系统发出相关指令的人机界面。shell可以通过其条件语句和循环语句等,把一系列Linux命令结合在一起,形成一个相当于面向过程的程序,即shell script,从而实现一些复杂的功能。

  shell可以说是Linux命令集的概称,属于命令行的人机界面。shell是一个用C语言编写的程序,它是用户使用Linux的桥梁。shell既是一个命令语言,也是一个程序设计语言;其次,shell也指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。

  由此可见,shell相当于经过装饰的命令行,它与命令行一样,都能操作Linux;但是shell是面向过程的,相当于有了一定的逻辑和过程,而命令行只是单一的操作。

  shell与Linux命令的区别

  1、直接在命令行执行,就是在当前的shell环境下执行,比如涉及到一些环境变量的时候,必须在当前shell环境里执行。

  2、在脚本执行的话,会fork一个子进程,所有操作都在子进程中进行。如果涉及到一些在脚本里设置环境变量的东西,脚本结束了,环境变量就消失了,如果是修改环境变量的话,需要特别注意。

  3、shell可以重复或批量地进行一些命令,你也可以把自己要重复执行的命令写到脚本里面执行,而命令行的话就需要一个一个的输入命令,比较麻烦。

以上是关于shell与Linux命令有什么区别?它们之间有联系吗?的主要内容,如果未能解决你的问题,请参考以下文章

shell和shell脚本 有啥区别啊

shell变量与C语言变量之间在用法上有啥区别

linux中shell分多少种,都有啥区别

linux命令和shell命令有啥区别啊?

Linux高手请进,急急急!Linux脚本,与二进制程序的异同

什么是SHELL