SHELL脚本基础入门
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SHELL脚本基础入门相关的知识,希望对你有一定的参考价值。
文章为个人见解,欢迎指正。
在介绍shell脚本之前,我们首先来理解一些基本的概念。什么是程序?进程?程序就是指令加数据的集合,下面一张图可以清晰的看到程序的概念
程序本身是静态的,只有交由cpu执行时才能变成动态。但cpu执行速度特别快,一次执行一道程序,会大大浪费cpu的效率,于是就衍生了,多道程序的概念。多道程序处理,就是同一时间间隔内有多道程序并发执行,但程序本身之间同时执行容易发生数据出错。进程就是用来协调这些程序互不干扰的,所以进程是动态的。当程序要运行时,在调入内存的时候,会将资源分配给程序,之后便分配进程控制块,去将这些信息记载清楚,当程序执行完成后,进程控制块便会回收,资源也会回收。如下图:
进程是动态的。
下面介绍一下编程语言的概念:编程语言分为高级语言和低级语言,语言并不是说越高级越好,低级的意思是说越接近底层,越高层越接近人类的自然语言,低级语言执行效率会相对的高。如下图
我们看到,shell语言也是高级语言,shell语言是解释性语言,shell便是解释器(如bash)。解释性语言就像是同声翻译,执行一句,翻译一句。编译型语言,是一次全翻译完,放在那儿,谁都可以去运行。所以通常来说,编译行语言执行效率高,但前期会花费时间编译,只能说两种类型的语言,各有长处。下文主要介绍shell的基础入门
首先我们在所有的脚本语言中都会看到先面的开头
这个开头我们称之为shebang机制,他的主要作用便是告诉系统这个文件应该交由bash解释器去执行,接下来便是程序的正文了。
正文的内容便是你要完成的内容了,那么正文内容改如何去写呢?思路主要如下:
- 需求分析
- 程序逻辑分析
- 书写程序
- 调试bug
首先我们以一个简单脚本题目为例:
该程序主要代码如下:
我们来分析一下:
这道题主要实现的功能是创建用户和修改密码。但在创建用户前,我们需要满足一些条件,这些条件我们便可以当作判断语句,当满足这些条件时,我们便去执行下一步操作,当所有条件都满足时,我们便可以完成想要实现的功能。
通过上图,我们可以清晰的知道当遇到脚本需要时,应该如何考虑,从何处下手,便不会无从下手了。
以上是关于SHELL脚本基础入门的主要内容,如果未能解决你的问题,请参考以下文章