Bash-条件判断(文件判断,整型/字符串判断)

发布时间 2023-09-29 15:04:16作者: SiNanhong

按文件类型判断

红框常用

 使用方式:

  • test -e /root/install.log
  • [ -e /root/install.log ]  #[前后有空格]

常用判断,比如判断root是否为目录

[ -d /root ] && echo "yes" || echo "no"

 

按文件权限判断

 例子:若有student.txt 权限如下:-rw-r--r--;  不能判断是哪个是否,只要有一类用户有w都会是真

判断student.txt是否有写权限

[ -w /root/student.txt ] && echo "yes" || echo "no"

 

两个文件之间进行比较

 利用-ef判断是否是同一个文件(硬链接)

 

两个整数之间进行比较

 例子:[ 23 -gt 22] && echo yes || echo no  #因为23>22,输出yes

 

字符串的判断

 例子:

name =sc

name2 = sc

[ -z "$name" ] && echo "yes" || echo "no"  #输出no

[ "$aa" == "$bb" ] && echo  "yes" || echo "no"  #输出yes

 

多重条件判断

 例子:

aa=24

[ -n "$aa" -a "$aa" -gt 23] && echo "yes" || echo "no"  #输出yes