声明
通过学习 泷羽sec的个人空间-泷羽sec个人主页-哔哩哔哩视频,做出的文章如涉及侵权马上删除文章
笔记的只是方便各位师傅学习知识,以下网站只涉及学习内容,其他的都与本人无关,切莫逾越法律红线,否则后果自负
字符串和逻辑运算符
1.字符串运算符
首先我们在终端 利用vim 打开 u. sh
str1="hello"
str2="hello"
if [ "$str1" = "$str2" ]; then
echo True
else
echofalse
fi
我们sh u.sh运行脚本
再看看字符串是否相等,我们在并入 vim u.sh 把hello,改成Hello 看看大小写是否敏感
显然大小写是敏感的
sh 1.sh
这次写不相等的式子 ,所以在shell看来hello和Hello是两个不同的字符串代表shell大小写敏感 我们再插入 != 不等于试试看,返回true 说明他们不相等
str1="hello"
str2="Hello"
if [ "$str1" != "$str2" ]; then
echo True
else
echo flase
fi
长度式子
str1="hello"
str2="hello”
if [ -z "$str1" ]; then
echo True
else
echo flase
fi
-z (检查字符串的长度是否为零)
返回flase 长度不为零 -n (检查字符串长度是否不为零) 与-z相反我们再试试 空参数 不为空返回true,为空返回flase,我们把str1改为str11 看看是否为空
2.逻辑运算符之布尔运算符
num1=9
num2=19
if [ "$num1" != "9" ]; then
echo num1不等于9
else
echo num1等于9
fi
sh u.sh
结果为 num 1等于9
3.余运算
num1=9
num2=19
if [ "$num1" != "9" -a "$num2" -lt "20" ]; then
echotrue
else
echofalse
fi
同时满足"$num1" !="9" -a"$num2" -lt "20" 输出true 不满足返回flase
使用 -a 作为逻辑与运算符来正确连接两个条件,并给变量加上双引号确保保证正确 使用 -o 作为逻辑与运算符来正确连接两个条件,并给变量加上双引号确保保证正确
与之相反的参数是-o参数
只需要满足其中一个就可以返回true 两个都不满足就返回flase
原文始发于微信公众号(泷羽Sec- 火乐):红队-shell编程基础(五)
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论