云计算

入门基础Shell脚本
一、基本介绍
在日常的工作环境中,往往会有大批量、重复性的信息或者数据需要处理。身为管理员如果不会大批量处理这类数据有时会非常麻烦,而且容易出错。所以这时候就需要Shell脚本来批量处理这些数据、并自动化完成指定好的任务。
Shell在计算机当中其实是作为翻译官将人类的语言转化为计算机做能识别的二进制语言见,图1.1。我们将命令按顺序保存在一个执行文件中,我们也可以认为写脚本命令作为记流水账一样,因为计算机是按照写好的命令顺序来执行的。
二、脚本参数、命令介绍
2.1:执行脚本的方法
执行shell脚本的方法有四种,其中方法一:
./脚本的路径(绝对路径或相对路径)。 再用此方法的时候要确保要执行的脚本文件有执行权限,见图1.2 。没有执行权限的脚本不是绿色的,有执行权限的脚本是绿色的。一般的要想使用此种方法执行脚本应该提前确保有执行权限,chmod +x 脚本名称。
方法二: sh /脚本的路径(绝对路径或相对路径)。 此种方法无需脚本文件有执行权限。
方法三:source /脚本的路径(绝对路径或相对路径)。 此方法依旧无需脚本有执行权限。
方法四: . /脚本的路径(绝对路径或相对路径)。此方法依旧无需脚本有执行权限。
总结:以上四种方法除了./以外都无需执行文件有可执行权限。
2.2:脚本的构成
1.脚本的后缀名是:.sh结尾的。见图2.1

2.写好脚本名称开始写脚本的时候需要以#!/bin/bash为开头第一行。
3.若一条语句的开头是# 那么这句语句不会出现脚本的运算中,即为注释信息。
4.除了以上内容,构成脚本最为关键的内容就是可执行的语句也就是命令,计算机会按照用户所写好的命令一个一个执行。
(三)、变量作用于类型
变量的类型与作用
变量有四大类型分别是:自定义变量、环境变量、位置变量与预定义变量。
1.自定义变量,是一种有用户自己定义的变量,用户为其定义好一个之后这个值就会存储在计算机的内存中,如果用户再次给同一变量赋值那么变量的值就会改变。见图3.1.1注意!用户定义的变量要以字母或者下划线“_”为开头否则不是变量。声明变量时需要使用$符号。
2.环境变量,是计算机系统内部设置好的变量,如PATH图3.1.2。一般的环境变量名称不能改变但是其内容是可以更改的。
3.位置环境变量,是一种给脚本传递的参数。只有在脚本名字后面输入才有效,在脚本里位置环境变量用$n表示,n代表:1~9数字,表示在脚本后面的位置为第几个。
4.预定义变量,是系统为用户预先设定好的一种变量,用户无法更改或者赋值给这些变量。就如上文中的*$#、$?、$ $0** 等等。
(四)、脚本常用命令与符号
下面主要介绍一些在脚本中常用的命令和符号的使用方法。
1.echo :为输出语句,echo " 内容 ",在控制台上显示引号里的内容。
2.重定向符号,一般是将脚本执行后的数据指定到某个文件中。主要的从定向符号
3.管道符号,"|"一般是将符号左边命令所执行的结果交给右边命令继续处理。形式:命令1 | 命令2 | …… 。
4.引用符号,双引号" ",单引号\’ \’,反撇号 “ 。双引号:允许使用一些特殊的符号,如$。单引号:使内部特殊符号无效。反撇号:内部输入的是命令。
5.read -p :从键盘上输入内容为变量赋值。read命令后面输入一段话引导使用者输入相应的内容为变量赋值。
6.expr运算,一般可以计算:加减乘除和取余。其相应的符号为:+、-、\\ 、/ 、% 。其使用方法为:加法:expr a + b 。减法:expr a – b 。乘法: expr a \\ b 。 除法: expr a / b 。 取余:expr a % b 。
(五)、小结
本小节主要介绍了Shell脚本的工作环境,脚本的基本格式、变量的类型以及用法和一些基础指令。Shell脚本是自动化工作的重中之重,学号Shell脚本至关重要。所以,上文中提到的符号以及命令是一些最常用的。

入门–基础Shell脚本-冯金伟博客园