• Shell test 命令


    Shell 中的test 命令用于检查某个条件是否成立,它可以进行数值,字符和文件三个方面的测试。

    数值测试

    参数 说明

    -eq   等于则为真

    -ne   不等于则为真

    -gt    大于则为真

    -ge   大于等于则为真

    -lt    小于则为真

    -le   小于等于则为真

    实例演示:

    num1=100

    num2=100

    if test $[num1] -eq $[num2]

    then  

      echo '两个数相等!'

    else 

      echo '两个数不相等'

    fi

    输出结果:

    两个数相等!

    代码中的[]执行基本的算术运算 如:

    #!/bin/bash

    a=5

    b=6

    result=$[a+b]  # 注意等号两边不能有空格

    echo "result 为:$result"

    结果为:

    result 为: 11

    字符串测试

    参数 说明

    =     等于则为真

    !=   不相等则为真

    -z字符串  字符串的长度为零则为真

    -n 字符串  字符串的长度不为零则为真

    实例演示:

    num1="rulnoob"

    num2="runoob"

    if test $num1 = $num2

    then 

      echo '两个字符串相等!'

    else

      echo '两个字符串不相等!'

    fi

    输出结果:

    两个字符串不相等!

    文件测试

    参数  说明

    -e文件名 说明文件存在则为真

    -r 文件名 如果文件存在且可读则为真

    -w文件名 如果文件存在且可写则为真

    -x文件名 如果文件存在且可执行则为真

    -d文件名 如果文件存在且为目录则为真

    -f文件名 如果文件存在且为字符型特殊文件则为真

    -b文件名  如果文件存在且为块特殊文件则为真

    实例演示:

    cd /bin

    if test -e ./bash

    then 

      echo '文件已存在!'

    else  

      echo '文件不存在!'

    fi

    输出结果:

    文件已经存在!

    另外 Shell 还提供了与(-a)或(-o)非(!)三个逻辑操作符用于将测试条件链接起来,其优先级为:!最高 -a 次之 -o 最低

  • 相关阅读:
    Redis持久化(八)
    Redis通用命令(七)
    Redis数据结构(六)
    Redis数据结构(五)
    Redis数据结构(四)
    Redis数据结构(三)
    nodename nor servname provided, or not known
    edis.clients.jedis.exceptions.JedisDataException: MISCONF Redis is configured to save RDB snapshots,
    Redis与Java的链接Jedis(二)
    高并发Redis(Mac)环境配置(一)
  • 原文地址:https://www.cnblogs.com/simadongyang/p/8228204.html
Copyright © 2020-2023  润新知