Linux学习(八)-----shell学习 判断条件

时间:2022-10-01 15:35:33

1、test

(1)test   [参数]   filename

参数:

             -e     是否存在

             -f      是否为文件

             -d     是否为目录

             -b     是否为块设备

             -c     是否为字符设备

             -S     是否为套接字文件

             -P     是否为管道文件

             -L     是否为连接文件

             -r      是否可读

             -w     是否可写

             -x      是否可执行

             -u      是否  SUID

             -g      是否 SGID

             -k       是否 Sticky bit

             -s      是否为非空白文件

(2)比较两个文件  test    file1   [参数]   file2

参数:

             -nt   file1是否比file2新

             -ot   file1是否比file2旧

             -ef   两个文件是否为同一文件

(3)两个整数之间的判断  test  n1   [参数]    n2

             -eq         相等

             -ne          不等

             -gt            n1>n2

             -lt              n1<n2

             -ge           n1>=n2

             -le             n1<=n2

(4)判断字符串的数据 

test  -z  string     若string为空字符串,则为true

test  -n string      若string为空字符串,则为false

test  str1  =  str2 若两者相等,则为true

test   str1   !=   str2 若两者不等,则为true

(5)多重条件判断

-a   and

-o   or

!     条件求反

2、[ ]

中括号里面的每一个部分要以空格隔开

中括号里面的变量和常量都用双引号来设置

例如

[  “$name”   ==    “Test”   ]