Shell基础知识(二)——条件判断

简介: Shell基础知识(二)——条件判断

四、运算符 $[]$(())

  $[]$(()) 用于数值计算,避免歧义,所以括起来进行计算。

#!/bin/bash
s1=$[(1+3)*5]
s2=$((5+3))
echo '(1+3)*5 =' $s1
echo '5+3 =' $s2
sum=$[$1+$2]
echo '$1+$2=' $sum

#执行
./com.sh 12 13
#输出
(1+3)*5 = 20
5+3 = 8
$1+$2= 25

五、条件判断

5.1判断数值大小

判断符号 含义
-eq 等于
-ne 不等于
-lt 小于
-le 小于等于
-gt 大于
-ge 大于等于

基础案例

test 4 -gt 3
echo $?
#输出  0表示true,1表示false
0

test 4 -lt 3
echo $?
#输出  0表示true,1表示false
1

#等价于上面,但是注意括号前后需要有空格
[ 4 -gt 3 ]
echo $?
#输出  0表示true,1表示false
0

5.2 判断文件权限、文件类型

判断文件权限

判断权限符号 文件权限
-r 有读的权限
-w 有写的权限
-x 有执行的权限

判断文件类型

判断类型符号 文件类型
-e 文件存在
-f 文件存在且是一个常规文件
-d 文件存在且是一个目录

多条件判断

使用 && 进行短路与操作,如果第一个条件为false,直接返回false。

使用 || 进行短路或操作,如果第一个条件为true,直接返回true。

#判断shell脚本是否为文件夹
[ -d com.sh ]
echo $?
#输出1   false
1

#可以利用多条件判断,构成一个类似 ?: 的三元运算
[ -f com.sh ] && echo true || echo false
#输出
true
目录
相关文章
|
4月前
|
人工智能 机器人 Shell
【shell】shell条件判断、循环语句、基本运算符
【shell】shell条件判断、循环语句、基本运算符
|
4月前
|
Shell Linux
Linux下的Shell基础——变量、运算符、条件判断(二)
Linux下的Shell基础——变量、运算符、条件判断(二)
92 0
|
4月前
|
Shell Windows Perl
Shell编程中的条件判断与流程控制
Shell编程中的条件判断与流程控制
76 0
|
4月前
|
Java 大数据 Shell
Shell基础学习---2、运算符、条件判断、流程控制(第一天学习)
大数据开发学习 Shell基础学习---2、运算符、条件判断、流程控制
|
30天前
|
Shell Linux
在Linux中,shell脚本中的条件语句和循环结构是什么?
在Linux中,shell脚本中的条件语句和循环结构是什么?
|
Java Shell
Shell基础学习---2、运算符、条件判断、流程控制
Shell基础学习---2、运算符、条件判断、流程控制
|
Linux 数据安全/隐私保护 Perl
【Linux脚本篇】循环语句-for
【Linux脚本篇】循环语句-for
298 0
|
机器学习/深度学习 监控 关系型数据库
【Linux脚本篇】流程控制语句-if
【Linux脚本篇】流程控制语句-if
125 0
|
Shell Windows
【Shell编程】条件判断
【Shell编程】条件判断
144 0
|
Shell
【Shell编程】Shell中for循环、while循环、until循环语句
【Shell编程】Shell中for循环、while循环、until循环语句
52 0