linux 下bash条件判断属性整理

12 篇文章 0 订阅
condition1 -a condition2 如果条件1和条件2均成立
condition1 -o condition2 如果条件1或条件2成立
condition && run1 || run2 如果条件成立执行run1,不成立执行run2


文件属性判断
-a file 如果文件存在
-b file 如果文件存在,且该文件是区域设备文件
-c file 如果文件存在,且该文件是字符设备文件
-d file 如果文件存在,且该文件是目录
-e file 如果文件存在
-c file 如果文件存在,且该文件是一般文件
-g file 如果文件存在,且该文件设立了set group id属性
-h file 如果文件存在,且该文件是符号链接文件
-k file 如果文件存在,且该文件设立了sticky位的属性
-p file 如果文件存在,且该文件是管道文件(FIFO)
-r file 如果文件存在,且该文件具有客读属性
-s file 如果文件存在,且该文件的大小大于0
-t file 如果文件描述符是开启的,且链接了某个终端
-u file 如果文件存在,且该文件设立了set user id属性
-w file 如果文件存在,且该文件有可写入的属性
-x file 如果文件存在,且该文件有可执行的属性
-O file 如果文件存在,且该文件为有效的使用者id所拥有
-G file 如果文件存在,且该文件为有效的群组id所拥有
-L file 如果文件存在,且该文件是符号链接文件
-S file 如果文件存在,且该文件是socket文件
-N file 如果文件存在,且该文件自上次读取后,曾修改过
-file1 -nt file2 如果file1比file2新;或file1存在,但file2不存在
-file1 -ot file2 如果file1比file2旧;或file2存在,但file1不存在
-file1 -ef file2 如果file1和file2参考到相同的设备和inode编号


字符串属性判断
-z string 如果字符串长度为0(即空字符串)
-n string 如果字符串长度不为0(即非空字符串)
string 如果字符串长度不为0(即非空字符串)
string1 == string2 如果两个字符串相同
string1 = string2 如果两个字符串相同
string1 != string2 如果两个字符串不相同
string1 > string2 如果两个字符串1大于字符串2
string1 < string2 如果两个字符串1小于字符串2


算式条件判断
args1 -eq args2 如果参数1和参数2相等
args1 -ne args2 如果参数1和参数2不相等
args1 -lt args2 如果参数1小于参数2
args1 -le args2 如果参数1小于或等于参数2
args1 -gt args2 如果参数1大于参数2
args1 -ge args2 如果参数1大于或等于参数2

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值