if判断中常使用的shell选项
选项 含义
-eq //等于 equal
-ne //不等于 not equal
-gt //大于 greater than
-lt //小于 less than
-ge //大于等于 greater equal
-le //小于等于 less equal
-z 判断变量是否存在值 //-z 在if里的意思是 空 zero
-d 判断该选项后的参数是否为目录 directory
-f 判断该选项后指定的参数是否为文件 file
-L 判断指定的是否为符号链接 link
-r 判断指定的是否可读 read
-s 判断存在的对象长度是否为0 size
-w 判断指定的是否可写 write
-x 判断存在的对象是否可以执行 execute
-! 测试条件的否定符号
if [ -n "$str1" ] 当串的长度大于0时为真(串非空) ,使用-n判断变量一定要带上双引号""
if [ -z "$str1" ] 当串的长度为0时为真(空串)
if [ "$str1" ] 当串str1为非空时为真
文件表达式
if [ -f file ] 如果文件存在
if [ -d ... ] 如果目录存在
if [ -s file ] 如果文件存在且非空
if [ -r file ] 如果文件存在且可读
if [ -w file ] 如果文件存在且可写
if [ -x file ] 如果文件存在且可执行
整数变量表达式
if [ int1 -eq int2 ] 如果int1等于int2
if [ int1 -ne int2 ] 如果不等于
if [ int1 -ge int2 ] 如果>=
if [ int1 -gt int2 ] 如果>
if [ int1 -le int2 ] 如果<=
if [ int1 -lt int2 ] 如果<
字符串变量表达式
If [ $a = $b ] 如果string1等于string2,字符串允许使用赋值号做等号
if [ $string1 != $string2 ] 如果string1不等于string2
if [ -n "$str" ] 如果str 非空(非0),返回0(true)
if [ -z $str ] 如果str 为空
if [ $str ] 如果str 非空,返回0 (和-n类似)
标签:语句,脚本,shell,str1,equal,判断,int1,file,int2
From: https://www.cnblogs.com/yongfengnice/p/17016731.html