1、判断方式
方式1:test
方式2: [ ]
方式3: [[ ]]支持正则
2、 判断文件类型
判断参数含义
-e #判断文件是否存在(任何类型文件)
-f #判断文件是否存在并且是一个普通文件
-d #判断文件是否存在并且是一个目录
-L #判断文件是否存在并且是一个软链接文件
-b #判断文件是否存在并且是一个块设备文件
-S #判断文件是否存在并且是一个套接字文件
-c #判断文件是否存在并且是一个字符文件
-p #判断文件是否存在并且是一个命名管道文件
-s #判断文件是否存在并且是一个非空文
3、判断文件权限
判断 参数含义
-r #当前用户对其是否有读权限
-w #当前用户对其是否有写权限
-x #当前用户对其是否有执行权限
-u #当前用户对其是否有suid特殊权限(高级权限冒险位)
-g #当前用户对其是否有guid特殊权限(高级权限强制位)
-k #当前用户对其是否有o+t特殊权限(高级权限粘滞位)
o+t权限:任何用户可以写,但只有文件拥有者和超级用户可以删
u+s权限:针对某个程序任何用户都有读写这个程序的权限
g+s权限:组里的目录下文件编入到此群组中,无论是哪个用户创建的文件
4、判断文件新旧
判断参数含义
file1 -nt file2 #比较file1是否比file2新
file1 -ot file2 #比较file1是否比file2旧
file1 -ef file2 #比较是否为同一个文件,或者用于判断硬连接,是否指向同一个inode
5、判断整数大小
判断参数含义
-eq #相等
-ne #不相等
-gt #大于
-ge #大于等于
-lt #小于
-le #小于等于
6、判断字符串
判断参数含义
-z #判断是否为空字符串,字符串长度位0
-n #判断是否为非空字符串,字符串长度大于0
string1 = string2 #判断字符串是否相等
string1 != string2 #判断字符串是否不相等
7、多重条件判断
判断符号含义
-a 和 && #逻辑与,全真则真
-o 和 || #逻辑或,全假则假