test条件判断

时间:2019-09-17
本文章向大家介绍test条件判断,主要包括test条件判断使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

test条件判断

1 # 符号 [ ] 等同  test命令
2  
3 expression为字符串操作{
4  
5     -n str   # 字符串str是否不为空
6     -z str   # 字符串str是否为空

expression为文件操作

 1 -a     # 并且,两条件为真
 2 -b     # 是否块文件     
 3 -p     # 文件是否为一个命名管道
 4 -c     # 是否字符文件   
 5 -r     # 文件是否可读
 6 -d     # 是否一个目录   
 7 -s     # 文件的长度是否不为零
 8 -e     # 文件是否存在   
 9 -S     # 是否为套接字文件
10 -f     # 是否普通文件   
11 -x     # 文件是否可执行,则为真
12 -g     # 是否设置了文件的 SGID 位 
13 -u     # 是否设置了文件的 SUID 位
14 -G     # 文件是否存在且归该组所有 
15 -w     # 文件是否可写,则为真
16 -k     # 文件是否设置了的粘贴位  
17 -t fd  # fd 是否是个和终端相连的打开的文件描述符(fd 默认为 118 -o     # 或,一个条件为真
19 -O     # 文件是否存在且归该用户所有
20 !      # 取反

expression为整数操作

1 expr1 -a expr2   # 如果 expr1 和 expr2 评估为真,则为真
2 expr1 -o expr2   # 如果 expr1 或 expr2 评估为真,则为真

两值比较

 1 整数     字符串
 2 -lt      <         # 小于
 3 -gt      >         # 大于
 4 -le      <=        # 小于或等于
 5 -ge      >=        # 大于或等于
 6 -eq      ==        # 等于
 7 -ne      !=        # 不等于
 8 
 9 
10 
11 test 10 -lt 5       # 判断大小
12 echo $?             # 查看上句test命令返回状态  # 结果0为真,1为假
13 test -n "hello"     # 判断字符串长度是否为0
14 [ $? -eq 0 ] && echo "success" || exit   # 判断成功提示,失败则退出

原文地址:https://www.cnblogs.com/alog9/p/11532669.html