Shell脚本基本判断

一.条件测试

格式1: test  条件表达式
格式2:[ 条件表达式 ]

二.文件测试

    -d:测试是否为目录(Directory)
    -e:测试目录或文件是否存在(Exist)
    -f:测试是否为文件(File)
    -r:测试当前用户是否有权限读取(Read)
    -w:测试当前用户是否有权限写入(Write)
    -x:测试当前用户是否有权限执行(eXcute)

[root@localhost ~]# test -d /etc/yum  //测试/etc/yum是否是目录
[root@localhost ~]# echo $?             //上一条命令执行状态0就是正常执行,非0就是错误
    0
[root@localhost ~]# test -f /etc/yum   //测试/etc/yum是否是文件
[root@localhost ~]# echo $?
    1
[root@localhost ~]# test -e /etc/yum  //测试/etc/yum是否存在
[root@localhost ~]# echo $?
    0

三.整数测试

    -eq:等于(Equal)
    -ne:不等于(Not Equal)
    -gt:大于(Greater Than)
    -lt:小于(Lesser Than)
    -le:小于或等于(Lesser or Equal)
    -ge:大于或等于(Greater or Equal)

[root@localhost ~]# [ $(who|wc -l) -gt 10 ]&& echo "有点多!" //统计当前用户量
    有点多!

四.字符串比较

    格式1:[ 1 == 2 ]
    格式2:[ -z 2 ]

    ==:字符串内容相同
    !=:字符串内容不同,!表示相反的意思
    -z:字符串内容为空

五.逻辑测试

    -a或&&:逻辑与、“而且”的意思
    -o或||: 逻辑或、“或者”的意思
    !:逻辑否

[root@localhost ~]# [ ! -e /opt/abc ]&&mkdir /opt/abc  // /opt/abc这个目录不存在我就创建这个目录
[root@localhost ~]# ls /opt
abc  rh

6.if语句单分支

![](/upload/otherpic66/a9f39959fb7e9ee3c80634b282a7ac5d.png)
#!/bin/bash
mulu="/etc/ccc"  
if [ ! -d $mulu ] 
then
    mkdir -p $mulu
fi

7.if双分支语句

Shell脚本基本判断

网站建设哪家好,找创新互联公司!专注于网页设计、网站建设、微信开发、小程序制作、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了岭东免费建站欢迎大家使用!

#!/bin/bash
ping -c 3 -i 0.2 -W 3 $1 &>/dev/null
if [ $? -eq 0 ]
then
    echo "Host $1 is up "
else
    echo "Host $1 is down "
fi
#-C发数据包  ,-0.2每隔两秒发一次  -W 3次回复  所有输出到这个无用的目录中

[root@localhost ~]# source test.sh
    Host  is down 

8.if多分支和嵌套语句

Shell脚本基本判断

#!/bin/bash
#一场跑步比赛,10秒内进入决赛,进入决赛之后会被分进男子组或女子组
read -p "请输入你的比赛时间" tim
if [ $stim -lt 10 ]
then
    echo "进入决赛"
    read -p "请输入你的性别(男/女) " sex
    if [ $sex = "男" ]
        then
            echo "进入男子组"
    else
            echo "进入女子组"
    fi
else "被淘汰"
fi

本文题目:Shell脚本基本判断
标题网址:http://hbruida.cn/article/jppgie.html