一、什么是shell脚本
我们已经能够熟练的在终端中输入命令来完成一些常用的操作,但是我们都是一条一条输入命令。这样会很麻烦,那么有没有一种方式可以将很多命令放大一个文件里面,然后直接运行在这个文件即可?肯定有,这个就是shell脚本!
shell脚本类似windows的批处理文件,shell脚本就是将连续执行的命令写成一个文件。
shell脚本提供数组、循环、条件判断等功能。shell脚本一般是Linux运维或者系统管理员要掌握的,作为嵌入式开发人员,只需要掌握shell脚本最基础的部分即可
二、shell脚本写法
shell脚本是个纯文本文件,命令从上而下,一行一行的开始执行。shell脚本扩展名为.sh。shell脚本第一行一定要为
#!/bin/bash
表示使用bash
三、shell脚本语法
3.1、第一个shell脚本
vi my.sh
给权限: chmod 777 my.sh (一开始权限不能执行)
执行: ./my.sh
3.2、交互式shell脚本(有输入输出)
read
读取多个变量值:
3.3、shell脚本的数值计算
shell仅支持整型,数值计算使用$((表达式))。
(等于号= 中间不能有空格)
3.4、test命令
test命令用于查看文件是否存在、权限等信息,可以进行数值,字符,文件三方面的测试。
&&和 || 命令:
cmd1 && cmd2 当cmd1执行完毕并且正确,那么cmd2开始执行,如果cmd1执行完毕错误,那么cmd2不执行
cmd1 || cmd2 当cmd1执行完毕并正确,那么cmd2不执行,反之cmd2执行
test参数
-e 存在即为真
演示1: 查看文件是否存在
演示2: 查看字符串是否相等
3.5、中括号[ ] 判断夫
[ ] 里面只能输入 == 或 !=
(中括号两边要空开一个空格,且 两边不论是字符串还是变量都要加 “ ” )
3.6、默认变量
$0 ~ $n :表示shell脚本的参数,包括shell脚本命令本身,shell脚本命令本身为$0
$#: #表示最后一个参数的标号
$@:表$1、$2、$3…