zoukankan      html  css  js  c++  java
  • shell script 之四:流程控制 if 分支语句

    if  条件判断

    基本语法:

    1:单分支:
    if  [ 判断条件 ]; then
        符合该条件执行的语句
    fi
    2:多分支:
    if  [ 判断条件1 ]; then
           符合该条件1执行的语句
      elif  [ 判断条件2 ]; then
           符合该条件2执行的语句
      elif  [ 判断条件3 ]; then
           符合该条件3执行的语句
      else
           符合该条件执行的语句
    fi

    注意:if 和else分支都不能为空,必须要有内容。一个if要对应一个fi结尾。

    #!/bin/sh
    #test for if by sunny at 2013
    
    read -p "请输入你的成绩:" m
    
    if [ $m -ge 90 ]; then
        echo "$m, very good!"
      elif [ $m -ge 70 -a $m -le 89 ];then
        echo "$m, good~"
      elif [ $m -ge 60 -a $m -le 79 ];then
        echo "$m, so so ~~"
      elif [ $m -lt 60 ];then
        echo "$m ?,this is bad"
      else 
        echo "your input is wrong"
    fi
      
    
    [root@test65 script]# sh if.sh 
    请输入你的成绩:90
    90, very good!
    [root@test65 script]# sh if.sh 
    请输入你的成绩:80
    80, good~
    [root@test65 script]# sh if.sh 
    请输入你的成绩:60
    60, so so ~~
    [root@test65 script]# sh if.sh 
    请输入你的成绩:50
    50 ?,this is bad
    

      

    常用判断:

    [ -d  /www ]   判断/www是否存在,不存在为false

    [ -f   file ]      判断file是否为普通文件

    [ -e  file  ]     判断file是否存在

    [ file1 -nt file2 ]   file1是否比file2新(new than)

    [ file1 -ot file2 ]   file1是否比file2旧(old than)

    -r、-w、-x表示文件是否有可读、可写、可执行权限(指运行这个脚本的用户)

    例子:

    #!/bin/sh
    #if test
    #by sunny 2012
    
    #检查目录是否存在
    if [ -e /data/www ];then
        echo "the dir is exist"
      else 
        echo "the dir is none"
        mkdir -p /data/www
        echo -e " 33[32m create dir:/data/www 33[0m "
    fi
    
    sh if2.sh 
    the dir is none
    create dir:/data/www
    

      

             

  • 相关阅读:
    Oracle条件分支查询
    Oracle分组函数实例
    使用JDK合成照片
    Oracle存储过程记录异常日志
    Emmet Cheat Sheet(Sublime编辑)
    JS中级
    JS中级
    架构师必须知道的架构设计原则
    JS中级
    JS中级
  • 原文地址:https://www.cnblogs.com/sunny18/p/8610737.html
Copyright © 2011-2022 走看看