• shell2-if判断


    1.条件测试类型(判断类型):

      将测试结果做为判断依据。

      测试类型有以下三种
          [ 命令 ] :命令测试法(最常用的)
          [[ 命令 ]] : 关键字测试
          test 命令
          以上是三种都可以,注意单词前后都要加空格,否则会语法错误

    2.整数比较
    -eq:测试两个整数是否相等 例子:[ $a -eq $b ] 相等为真 不相等为假
    -ne: 测试两个整数是否不相等 不相等为真 相等为假
    -gt: 测试一个数是否大于另外一个数
    -lt:测试一个数是否小于另外一个数
    -ge:大于等于 例子:[ 5 -ge 4 ]
    -le:小于等于


    3.&&:当左边为假时,右边是不执行的。只有左边为真时,右边才运算
    -a:
    例子:[$# -gt 1 ] && [ $# -le 3 ]
    [ $# -gt 1 -a $# -le 3]
    ||:当左边为假时,右边就开始执行。左边为真时,右边就不运算了。
    -o:
    !:表示取反
    !$: 表示调用上一个命令的最后一个参数

    4.文件测试
    -e 路径/文件名:测试文件或目录是否存在
    -f 路径/文件名:测试文件是否为普通文件
    -d 路径/文件名:测试文件是否为目录
    -r 路径/文件名:测试当前用户对指定文件是否有读权限
    -w 路径/文件名:测试当前用户对指定文件是否有写权限
    -x 路径/文件名:测试当前用户对指定文件是否有执行权限


    5.字符串比较
    [ a = b ] ;测试两个字符是否相等 (注意=两边一定要有空格,否则系统会识别成赋值的
    [ a != b ]: 测试两个字符是否不相等
    -z 字符串 测试字符串是否为空
    -n 字符串 测试字符串是否不空

    6.算数运算
    let c=$a+$b 例子:let c=1+2
    c=$[$a+$b] 例子:c=$[1+2]
    c=$(($a+$b))例子:c=$((10+10))


    高精度计算
    例子: echo "scale=10; 4/3"|bc
    scale=数值 表示保留小数点后几位。 bc是一个计算工具。
    或者是bc<<<"scale=2;10/3"
    bc<<<3+4
    expr 3 + 3 在判断变量是不是数字的时候可以用这个

    例子:
    #!/bin/bash
    while :; do
      read -p "请输入数字:" a
      expr $a + 0 &> /dev/null
        if [ $? -ne 0 ]; then
          echo "您输入的不是数字,请重新输入"
        fi
    done

    或者是
    #!/bin/bash
    while :; do
      read -p "请输入数字:" a
      case $a in
      [a-z])
        continue;;
      *)
        exit 1;;
      esac
    done

     

  • 相关阅读:
    python 扁平列表转树状字典
    在Windows Server2012中通过DockerToolbox 一步一步搭建Mysql 数据库存运行环境
    腾讯云ubuntu服务器安装图像化界面并实现远程登陆
    IIS、apache、tomcat服务器虚拟主机配置
    微信商家二维码到底是什么
    线程与线程锁---python版本(附带线程锁实例)
    pip更新后仍旧是使用的旧版本
    pip更新后仍旧是使用的旧版本
    H5-LocalStorage
    Python摄像头抓拍的彩色图像转为灰度图、二值化和调整图片尺寸(实例)
  • 原文地址:https://www.cnblogs.com/pangbing/p/6535178.html
Copyright © 2020-2023  润新知