zoukankan      html  css  js  c++  java
  • LINUX SHELL条件判断

    算术运算的条件判断
    [] [[]]:
    -eq
    -ne
    -lt
    -le
    -gt
    -ge

    (( )):
    >
    <
    >=
    <=
    =

    [root@monitor ~]# if (( 2 == 3));then echo '123'; fi
    [root@monitor ~]# if (( 2 >= 3));then echo '123'; fi
    [root@monitor ~]# if (( 2 <= 3));then echo '123'; fi
    123
    [root@monitor ~]# if (( 2 < 3));then echo '123'; fi
    123
    [root@monitor ~]# if (( 2 > 3));then echo '123'; fi

    
    
    字符串的条件判断
    
    -z
    -n
    =
    ==
    !=
    <
    >
    
    文件属性的条件判断
    
    -f
    -d
    -c
    -w
    -L
    -x
    -e
    -b
    -r



    #!/bin/bash
    if [ -e demo.sh ];then
    echo "文件存在"
    fi

    fpath="/etc/passwd"

    if [ -e $fpath ];then
    echo file exists;
    else
    echo file no exists;
    fi


    [ -e "/etc/hosts" ] || (echo '/etc/hosts not exist";exit 1)

    if [ "$?" -eq 1 ];then
    exit
    fi

    echo "/etc/hosts 文件存在"


    declare -i a
    a=20
    if [ $a -eq 20 ];then
    echo "var a 20"
    fi


    if [ $a -gt 10 ];then
    echo 'var >10';
    fi


    if [ "$LOGNAME" != "ROOT" ];then
    echo "root "
    fi


    if [ "Bill" >"Apple" ];then
    echo " BILL >APPLE"
    fi

    str="Bill"
    if [ -n $str];then
    echo "234"
    fi

    #!/bin/bash
    NUM1=100
    NUM2=200
    if (($NUM1 > $NUM2));then
    echo "ok"
    else
    echo "ok1"
    fi

    #!/bin/bash
    Dir=/tmp/20140909
    if [ ! -d $Dir ];then
    mkdir -p $Dir
    echo -e "33[32mthis $Dir exist33[0m"
    else
    echo -e "33[32mthis $Dir is exist,please exit.33[0m"

    fi


    #!/bin/bash
    FILES=/tmp/test.txt
    if [ -f $FILES ];then
    echo "ok">>$FILES
    else
    cat $FILES
    fi

    -a: 逻辑表达式 -a 逻辑表达式
    -o: 逻辑表达式 -o 逻辑表达式

  • 相关阅读:
    理解HTTP幂等性
    企业技术树
    数据库MySQL-Oracle-DB2-SQLServer分页查询
    Redis安装教程
    Redis VS Memcached
    Redis简介
    Redis系列文章导读
    坐标轴
    图例
    画网格
  • 原文地址:https://www.cnblogs.com/zengkefu/p/5522976.html
Copyright © 2011-2022 走看看