# 学习视频笔记均来自B站UP主" 泷羽sec",如涉及侵权马上删除文章
仅用于学习参考,不要越过法律红线
一、字符串运算符
示例1”=“ 用vim创造u.sh文件
str1="hello"
str2="hello"
if [ "$str1" = "$str2" ] ; then
echo true
else
echo false
fi
保存并退出
示例2 “!=” 用vim创造修改原先u.sh文件
str1="HELLO"
str2="hello"
if [ "$str1" != "$str2" ] ; then
echo true
else
echo false
fi
示例3 “-z" 用vim修改u.sh文件
str1="HELLO"
str2="hello"
if [ -z "$str1" ] ; then
echo true #$str1为空返回true
else
echo false #$str2不为空返回false
fi
示例4 “-n" 用vim修改u.sh文件
str1="HELLO"
str2="hello"
if [ -n "$str1" ] ; then
echo true #$str1不为空返回true
else
echo false #$str2为空返回false
fi
二、逻辑运算符
在 Bash 中,可以通过 [ … ] 或 [[ … ]] 来定义条件表达式,结合逻辑运算符实现布尔运算。
示例1.&& 和 ||运算符
num1="10"
num2="15"
if [ $num1 -lt 20 ] && [ $num2 -gt 10 ]; then #$num1小于20,$num2大于10输出yes,否则输出no
echo yes
else
echo nono
fi
||"运算符与”&&“用法相同
示例 2.-a 和 -o 运算符
num1="10"
num2="15"
if [ $num1 -lt 20 -a $num2 -gt 10 ]; then #$num1小于20,$num2大于10输出yes,否则输出no
echo yes
else
echo nono
fi
if [ $num1 -gt 20 -o $num2 -lt 10 ] ;then # $num1大于20或$num2小于10 输出true,否则输出false
echo true
else
echo false
fi
示例3.!运算符
num1=20
if ! [ $num1 -lt 10 ];then # !取反,$num1小于10为假,双重否定表肯定
echo true
else
echo false
fi