shell-if条件判断语句
1.基本语法
基本语法:
if expression
then
statement1
statement2
.....
fi,
意思是:当expression的返回值为0时,输出then后面的内容,then子句后面可以跟多条语句,如statement1,statement2....当expression的返回值为0时,依次执行statement1.....否则不输出
为了简洁美观,通常把then写到if后面。
if expression; then
statement1
.....
if
实例1:判断11和21那个大
#/bin/bash
if [ 11 -lt 21 ];then
echo "11小于21"
fi
结果:
日常使用Linux,一般简单判断不用if,而是用&&(表示前一条命令正确执行后,才会执行下一条命令)
那我们上面的例子就可以改为:
[root@centos8 ~]# [ 11 -lt 21 ] && echo "11小于21" #测试语句可以改为 test 11 -lt 21 &&echo "11小于21"
11小于21
2.if else 流程控制
进行if判断时,若不止要输出正确结果,还要输出错误结果就得加上sele,来输出不符合要求时,输出的内容
那么我们就可以写一个简单的密码登录脚本:
#!/bin/bash
echo "请输入密码:"
read passwd
if [ "$passwd" = "123456" ];then
echo "密码正确"
else
echo "密码错误"
fi
输出结果如下:
3.if else进行多条件判断
在if判断里,判断多个条件用if else
实例:输入指定用户名,得到需要的用户信息
#!/bin/bash
echo "输入用户名,查找信息"
read user
if [ "$user" = "zhangsan" ];then
echo "张三,法外狂徒,某年某月某地人"
elif [ "$user" = "lisi" ];then
echo "李四,国家级退堂鼓演奏家,某年某地....."
else
echo "没有找到这个人"
fi