bash 文件测试

-a  -e 文件存在 
存在性类别测试
-b  存在且为块设备文件
例如[-b /etc/grub2.cfg]
-c   .....字符设备
-d      目录文件
-f     普通文件
-p         命名管道文件
-h/-L   符号链接文件
-S    套接字文件

权限测试
-r  -w  -x  文件是否存在并且拥有。。权限
特殊权限
-g   存在且存在sgid权限
-u        suid
-k              sticky
大小测试
-s存在且非空(有大小)

文件是否打开
-t fd  fd表示文件描述符是否已经打开且与某终端相关

-N上次读取后是否被修改过
-O 当前用户是否为文件属主
-G  当前有效用户是否为文件属主


双目测试:

  FILE1 -ef FILE2  表示两个文件是否为指向同一个设备上的相同的inode

  FILE1 -nt FILE2  文件1是否新于2

  FILE1 -ot FILE2   1是否旧于2


组合测试条件
    逻辑运算
    两种方式
第一种
         &&
         ||
        !
        与或非
    例子 [-e file] &&[-r file]   存在且可读  
第二种
    EXP1 -a  EXP2
    EXP1 -o  EXP2
    ! EXP 
    与或非

必须使用测试命令

hotsName=`hostname`
[-z "$hotsName"] || ["$hotsName"=="localhost.localdomain" ]
为空或者等于local..


1 && 2
前面满足 那么就会执行2  与命令可以看成条件命令取使用


[! -r /etc/fstab -a ! -w /etc/fstab]
[! \(-r /etc/fstab -o  -w /etc/fstab\)]
这里的连接需要使用或命令,因为&&连接了两个命令,读取了第一个失败,那么就不会读第二个命令了
既不可读也不可写的测试,要注意不能在root用户下

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值