shell script-判断式

本文详细介绍了Linux下test命令的各种用法,包括文件类型的判断、文件权限的检查、文件间比较及整数间的比较等。此外还提供了字符串比较的方法及如何进行多重条件的判定。

  test判断式

看下面:

1 test -e /opt/a.txt && echo "exist" || echo "not exist"

 

判断 /opt/a.txt 存不存在,存在输出 exist ,否则输出 not exist

test还有很多用法:

  1. 关于某个文件名的”文件类型“判断,如 test -e fileName 表示判断存在与否
    1. -e 该文件名是否存在
    2. -f  该文件名是否存在且为文件
    3. -d 该文件名是否存在且为目录
  2. 关于文件的权限,如 test -f fileName 表示判断文件是否可读
    1. -r
    2. -w
    3. -x
  3. 关于两个文件之间的比较 ,如 test file1 -nt file2
    1. -nt  (newer than)判断 file1 是否比 file2 新
    2. -ot  (older than)判断 file1 是否比 file2 旧
  4. 关于两个整数之间的判断,如 test n1 -eq n2
    1. -eq 判断相等
    2. -ne 判断不相等
    3. -gt  n1 大于 n2
    4. -lt   n1 小于 n2
    5. -ge  大于等于
    6. -le   小于等于
  5. 关于字符串比较
    1. Test -z string  若string是空字符串,返回true
    2. Test -n string 若string是空字符串,返回false
    3. test str1=str2
    4. test str1!=str2
  6. 多重条件判定
    1.  -a    两个条件同时成立, 如 test -e file1 -a -e file2 ,表示判断 file1 和 file2 是否都存在
    2.  -o    任何一个条件成立就成立,如 test -e file1 -o -e file2,file1 或 file2 任何一个存在都返回 true
    3.  !      否定,如 test ! -e file1,  表示 file1 不存在返回 true

[  ... ] 判断式

经常用于if 语句的判断

注意: [ ] 中每个组件都需要用空格符来分隔; 变量最好都用双引号括起来; 常量也用双引号括起来

 

转载于:https://www.cnblogs.com/formyjava/p/4214529.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值