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

posted @ 2020-05-23 13:49  徐野子  阅读(1106)  评论(0编辑  收藏  举报