编写规范:
代码规范:
#!/bin/bash [制定告知系统当前这个脚本要使用的shell解释器]
命名规范:
文件名.sh .sh是;Linux系统bash shell的默认后缀
使用流程:
创建.sh文件 touch/vim
编写shall代码
执行hell脚本 脚本必须有执行权限
案例1:创建一个shell脚本程序
输出命令:#echo “HelloWorld”
注意:输出的内容如果是包含字母和符号(不包含变量),则需要引号包括气啦,如果是纯数字可以包也可以不包。
1.1变量的定义与使用
定义: class_name=“BianLang”
使用:echo $class_name
变量名的规范:
变量名后面的等号不能有空格;
命名只能使用数字、字母、下划线,不能以数字开头。
中间不能有空格,可以用下划线代替;
不能用标点符号
不能使用关键字
用双引号可以识别变量,单引号不能识别变量
三个引号的问题:
单引号不能被转义
被单引号套住的指令只能原样输出,不会被解析
被双引号套住的指令可以输出结果
反引号套住的是 指令的结果作为变量 比如:dt=·‘date + %F %T’·
1.2只读变量
语法:readonly 变量名
image.png
会有问题 因为第三行做了限制(包括第一行)
1.3接收用户输入(重点)
语法:
read -p 提示信息 变量名
2.1if条件判断语句
单行写法:
if [condition];then command;fi 【单行写法】
一般写法:
2.1.1.一个条件
if 条件【符合条件】
than
结果【要执行的命令】
fi
2.1.2.
if condition
then
command1
command2
else
command3
fi
2.1.3.
if condition1
then
command1
elif condition2
then
command2
else
command3
fi
3算数
在sell中,运算符和其他编程脚本一样,常见的有算数运算符、关系运算符、逻辑运算符、字符串运算符、文件测试运算符等。
3.1运算符
算数运算符
#!/bin/bash
a=10
b=20
echo 'a + b ='expr $a + $b
【加】
#30
echo 'a - b ='expr $a - $b
【减】
#-10
echo 'a * b ='expr $a \* $b
【乘】
#200
echo 'a / b ='expr $a / $b
【除】
#0
echo 'a % b ='expr $a % $b
【取余】
#10
echo 'a == b 'expr $a == $b
【判断等于】
#0 false
echo 'a != b 'expr $a != $b
【判断不等于】
#1 true
3.2关系运算符
-eq equal 左右相等返回true
-ne not equal 左右不等返回true
-gt great than 左边数大返回true
-lt less than 左边数小返回true
-ge great than or equal 左边数大于等于 返回true
-le less than or equal 左边数小于等于 返回true
3.3逻辑运算符
! 非运算
-o 或运算
-a 与运算
3.4字符串运算符
= 判断两个字符串是否相等
!= 判断两个字符串是否不等
-z 检测字符串长度是否为零
-n 检测字符串长度是否不为零
str 检测字符串是否为空
3.5文件测试运算符
-b
$
file
-c$
file
-d$
file 检测文件是否目录
-f$
file 检测文件是否普通文件
-g$
file
-k$
file
-p$
file
-u$
file
-r$
file 检测文件是否可读
-w$
file 检测文件是否可写
-x$
file 检测文件是否可执行
-s$
file检测文件里是否有内容
-e$
file检测文件(包括目录)是否存在
3.6附带参数
$
0:本文件
$
1: 第一个参数
$
2: 第二个参数
$
3: ………………….类推