目录
一、在shell脚本中与用户交互
利用read name age
利用raed -p
利用read -t 10 -p
利用read -n 3 -t 10 -p
二、用脚本模拟编写
三、关系运算符
四、字符串运算符和逻辑运算符
字符串运算符
判断其是否大小写敏感
逻辑运算符之布尔运算符
余运算
声明:学习视频来自b站up主 泷羽sec,如涉及侵权马上删除文章
声明:本文主要用作技术分享,所有内容仅供参考。任何使用或依赖于本文信息所造成的法律后果均与本人无关。请读者自行判断风险,并遵循相关法律法规。
一、在shell脚本中与用户交互
利用read name age
read name age
指定变量信息xiaoyu 26
然后我们利用
echo $name 来接收用户输入
echo $age 来接收用户输入
利用raed -p
先进入bash环境
read -p "请输入你的姓名" name
输入:xiaoyu
echo $name 来接收用户输入
利用read -t 10 -p
read -t 10 -p "请输入你的姓名" name
-t(指定时间)
如果用户在10s内没有进行输入,程序会自动退出,反之就会执行程序
利用read -n 3 -t 10 -p
read -n 3 0t 10 -p "请输入你的姓名" name
-n(限制用户输入的字符数量)
二、用脚本模拟编写
vim 1.sh read -p "请输入你的姓名" name echo "你输入的姓名是:$name,请你确认!"
三、关系运算符
vim o.sh
首先,定义两个变量,然后通过if条件判断来进行两个简单的条件判断,再接入关系运算符
-eq(相等)
-lt(小于)
-gt(大于)
-ne(不等于)
else(反转)
只能对数值进行判断,无法对某个字符串进行判断
脚本如下
num1=78 num2=89 if [$num1 -eq $num2] : thenecho 相等 else echo 不相等 fi
[]可以换成test进行测试
num1=78 num2=89 if test $num1 -eq $num2 : thenecho 相等 else echo 不相等 fi
四、字符串运算符和逻辑运算符
字符串运算符
首先打开终端,利用vim打开u.sh
str1="hello" str2="hello" if [ “$str1” = “$str2” ]; thenecho True elseecho flase fi
接着sh u.sh运行脚本,看字符串是否相等
判断其是否大小写敏感
vim u.sh进入脚本并修改,将hello修改为Hello,然后再运行脚本,得出结果是不相等,所以shell编程中大小写敏感
-
-z(检查字符串的长度是否为0)
str1="hello" str2="hello" if [ -z ""$str1" ]; thenecho True elseecho flase fi
运行结果返回flase长度不为0
-
-n(检查字符串长度是否不为0)与-z相反
逻辑运算符之布尔运算符
num1=9 #num2=19(如果后续不需要用到num2,可删除这一行) if ["$num1"!= "9"]; thenecho num1不等于9 elseecho num1等于9 fi
余运算
num1=9 num2=19 #使用-a作为逻辑与运算符来正确连接两个条件,并给变量加上双引号确保正确 if [ $num1 != "9" -a $num2 -lt "20" ];thenecho True elseecho Flase fi
同时满足$num1 !=9 $num2 -lt 20 输出true 不满足返回flase
num1=9 num2=19 #使用-o作为逻辑或运算符来正确连接两个条件,并给变量加上双引号确保正确 if [ $num1 != "9" -o $num2 -lt "20" ];thenecho True elseecho Flase fi
与之相反的参数是-o参数 只需要满足其中一个就可以返回true 两个都不满足就返回flase