一、分支语句
1. 赋值
格式:a=10
注意:等号两边不能有空格
2. 恒等
格式:10 == 10
3. if语句
格式一:
if [ 判断条件 ]
then
语句块
fi
注意:条件成立,语句块运行,中括号两边由空格
格式二:
if [ 判断条件 ]
then
语句块1
else
语句块2
fi
格式三:
if [ 条件1 ]
then
语句块1
elif [ 条件2 ]
then
语句块2
......
else
语句块n
fi
4. 关系运算符
仅对数字有效
-eq:判等,相等返回true
-ne:判不等,不相等返回true
-gt:大于(>)
-lt:小于(<)
-gt:大于等于(>=)
-le:小于等于(<=)
注意:
在 [] 中使用-eq…
在$(()) 中使用==…
5. 布尔运算符
布尔值:true、false
!非运算取反:!true=false
-o 或运算:只要有一个表达式位true整体就为true
-a 与运算:只要有一个表达式为false,整体结果结尾false
6. 逻辑运算符
需要两个中括号包裹[[]]
&& 逻辑与:只要有一个表达式为false,整体结果就是false
|| 逻辑或:只要有一个true,结果就是true
7. 字符串运算符
- 判断字符串是否相等
= 相等返回true
!= 不相等返回true - 判断字符串长度是否为0
-z:为0返回true
-n:不为0返回true - 判空
$变量名 不为空返回true
8. 文件测试运算符
-d:判断是否为目录
-f:判断是否为文件
-r:判断是否能读
-w:判断是否能写
-x:判断是否能执行
-s:判断文件是否为空
-e:判断文件或目录是否存在
9. 转义字符
格式:\字符
- 转符号
" —> "
\ —> \ - 转特殊效果
需要开启转义 -e
\c 不换行
\b 后退
\n 换行
\t 水平制表符
如:echo -e “adfsdsfs\c”
10. read命令
格式:read 变量名
作用:从终端输入中读取到用户输入的数据,把读取道德数据传递给shell脚本中的变量
11. >、>>
> 定向符:显示结果保存到指定文件中(覆盖)
>> 双重定向符:显示结果保存到指定文件中(追加)
如:echo “123” >> 123.txt
12. 显示执行结果
格式:echo ‘linux命令’
esc下面的`
13. printf输出
格式:printf 格式声明 输出内容
格式声明和输出内容必须匹配
如:printf %d 88
%d :整数
%s :字符串
%c :字符
%f :浮点数
%-4.2f :-表示居左,默认居右;4表示总长度;.2表示保留2为小数
14. test判断条件
格式:if test 判断条件
优先级:!> -a > -o
15. case语句
格式:
case $变量名 in
值1)
语句块1
;;
值2)
语句块2
;;
值3)
语句块3
;;
......
*)
语句块n
;;
esac