• test命令


    test语句与if/then else 和case使结构使用,构成了Shell编程的控制转移结构。

    test命令的主要功能是

    (1)计算紧随其后的表达式

    (2)检查文件的属性

    (3)比较字符串

    (4)字符串含有的整数值

    ==>然后以表达式的计算结果作为test的命令出口状态

    重点是:test 可以用 【 】代替

    test.sh

    num1=100
    num2=100
    if test $num1 -eq $num2
    then
        echo '两个数相等!'
    else
        echo '两个数不相等!'
    fi

    【】括号要与表达式保留空格

    num1=100
    num2=100
    
    if [ $num1 -eq $num2  ]
    then
        echo '两个数相等!'
    else
        echo '两个数不相等!'
    fi

    1)判断表达式

    if test  (表达式为真)
    if test !表达式为假
    test 表达式1 –a 表达式 2                两个表达式都为真
    test 表达式1 –o 表达式2                 两个表达式有一个为真

    2)判断字符串

    test –n 字符串                          字符串的长度非零
    test –z 字符串                           字符串的长度为零
    test 字符串1=字符串 2          字符串相等
    test 字符串1 !=字符串2         字符串不等

    3)判断整数

    test 整数1 –eq 整数2                       整数相等
    test 整数 1 –ge 整数2                      整数1大于等于整数2
    test 整数1 –gt 整数 2                       整数1大于整数2
    test 整数1 –le 整数 2                       整数1小于等于整数2
    test 整数1 –lt 整数 2                         整数1小于整数2
    test 整数1 –ne 整数 2                      整数1不等于整数2

     
    4)判断文件

    test  File1 –ef  File2                            两个文件具有同样的设备号和i结点号
    test  File1 –nt  File2                            文件1比文件2 新
    test  File1 –ot  File2                            文件1比文件2 旧
    test –b File            文件存在并且是块设备文件
    test –c File            文件存在并且是字符设备文件
    test –d File            文件存在并且是目录
    test –e File            文件存在
    test –f File            文件存在并且是正规文件
    test –g File            文件存在并且是设置了组ID
    test –G File            文件存在并且属于有效组ID
    test –h File            文件存在并且是一个符号链接(同-L)
    test –k File             文件存在并且设置了sticky位
    test –b File            文件存在并且是块设备文件
    test –L File            文件存在并且是一个符号链接(同-h)
    test –o File            文件存在并且属于有效用户ID
    test –p File            文件存在并且是一个命名管道
    test –r File            文件存在并且可读
    test –s File            文件存在并且是一个套接字
    test –t FD                文件描述符是在一个终端打开的
    test –u File            文件存在并且设置了它的set-user-id位
    test –w File            文件存在并且可写
    test –x File            文件存在并且可执行

  • 相关阅读:
    Vue
    Vue
    Vue
    服务器上部署django项目流程?
    Git 命令
    git命令?
    消息队列中间件??
    简述COOKIE和SESSION的区别与联系?
    什么是restful API?
    Django、Flask、Tornado的区别?
  • 原文地址:https://www.cnblogs.com/wqbin/p/10885887.html
Copyright © 2020-2023  润新知