shell脚本语言与linux命令的联系与区别
使用linux肯定是要会使用命令的,就算提供有用户界面,绝大部分功能还是要通过命令行去操作的。而shell脚本语言也是运行在linux上的脚本语言,对于服务器运维人员也是几乎必须要掌握的。而shell脚本语言和linux命令有什么联系,有什么区别,也是要弄清楚的。 什么是shell,shell与linux命令的联系 shell翻译成壳的意思,它是包裹在linux内核外层的、一个可通过一系列的linux命令对操作系统发出相关指令的人机界面。 shell可以通过其条件语句和循环语句等,把一系列linux命令结合在一起,形成一个相当于面向过程的程序,即shell script,来实现一些较为复杂的功能。 总括,shell是linux命令集的概称,是属于命令行的人机界面。shell 是一个用C语言编写的程序,它是用户使用Linux的桥梁。Shell既是一种命令语言,又是一种程序设计语言。shell是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。Ken Thompson的sh是第一种Unix Shell,Windows Explorer是一个典型的图形界面Shell。Shell 和Shell Script不是一回事,通常我们说的都是Shell Script。 由定义可知, shell相当于经过装饰的命令行,和命令行一样,都能操作linux。但是shell是面向过程的,相当于有了一定的逻辑和过程,而命令行只是单一的操作。 shell与linux命令的区别 1.直接在命令行执行,就是在当前的shell环境下执行,比如涉及到一些环境变量的时候,必须在当前shell环境里执行。 2.在脚本里执行的话,脚本执行的时候,会fork一个子进程,所有操作都在子进程进行。如果涉及到一些在脚本里设置环境变量的东西,脚本结束了,环境变量也就消失了。 如果是修改环境变量的话,需要特别注意下。 3.shell可以重复或批量地执行一些命令。你也可以把自己要重复执行的命令写到脚本里面执行。而命令行的话就需要一个一个的输入命令,相对而言麻烦一些。 总结 上面就是一些对于shell和命令行的对比。个人觉得除了非常专业的运维人员,对大多数开发人员来说,这两者的差别不大,也不影响大家对于linux系统的使用。 ? "没有稳定的工作,只有稳定的能力。" (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- -bash: warning: setlocale: LC_CTYPE: cannot c
- 关于angularJs中使用$.ajax的注意点
- scala – SortedSet map并不总是保留结果中的元素
- linux 驱动之Kconfig文件和Makefile文件实例
- shell – 如何检查环境变量是否使用’set -o nou
- scala – 如何将空地图类型列添加到DataFrame?
- angular学习(十三)——Component
- 分享bootstarp3.0.2响应式模板-第二弹[Metronic_
- angularjs – Angular $resource无法正确解析整数
- angularjs – Angular JS – 使用Karma / Jasmin