首页 > 系统相关 >shell4

shell4

时间:2024-12-20 21:00:33浏览次数:21  
标签:shell4 相等 name num2 echo 判断 num1

脚本与用户交互以及if条件判断

如何在shell脚本与用户交互

利用read name age指定变量信息
echo $name来接收用户输入
echo $age来接收用户输入
image.png

这个例子可能不清晰我们利用read -p"清输入您的姓名” name
输入:xiaoyu
echo $name(接收用户的输入)

我们再看个例子,先进入bash不然用不了-p

read -t 10 -p "请输入您的姓名" name 

-t(指定时间)
(这个例子是讲如果我们用户10秒没有输入自动退出程序)
那么如果我们在10秒内输入了就会执行成功
image.png

如何限制用户输入的字符个数?,只有输入三个的时候才不会退出,少于大于都会退出

read -n 3 -t 10 -p "请输入您的姓名:"  name

-n(限制字符输入的数量)

用脚本编写模拟
vim i.sh

read -p "请输入您的姓名:" name
echo "您输入的姓名是:$name,请您确认!"

image.png

关系运算符
再讲讲在脚本环境中如何简单的做条件判断
vim o.sh
首先定义两个变量,然后通过if条件判断来进行两个简单的条件判断再接入关系运算符,
-eq(相等)
-lt(小于)
-gt(大于)
-ne(不等于)
else(反转)
只能对数值进行判断,无法对这个字符串进行判断

脚本如下

num1=89
num2=89
if [ $num1 -eq $num2 ] : then
	echo 相等
else
	echo 不相等
fi

[]我们可以换成test进行测试

num1=89
num2=89
if test $num1 -eq $num2 : then
	echo 相等
else
	echo 不相等
fi

image.png

num1=78
num2=89
这两行代码分别定义了两个变量num1和num2,并给它们赋予了初始值,num1被赋值为78,num2被赋值为89。

if [ $num1 -eq $num2 ] then
	echo 相等
else
	echo 不相等
fi

条件判断部分:
if [$num1 -eq $num2]:这里使用if语句来进行条件判断。在if语句的条件表达式中,
[](注意实际使用时[和它里面的内容、]和它前面的内容都要有空格隔开,这里为了方便说明先按紧凑格式写),在SheIl脚本中用于进行各种测试操作。
$num1$num2是对前面定义的两个变量num1和num2的引用获取它们的值来参与条件判断。,-eq是一个比较操作符,用于判断两个值是香相等(在数值比较的语境下,这里就是判断num1值和num2的值是否相等)。,所以整个条件表达式就是在测试num1的值和num2的值是否相等。
执行逻辑部分:
then:如果前面的条件判断结果为真(即num1的值和num2的值确实相等),那么就会执行then后面的代码块。
echo相等:当条件满足(也就是num1和num2相等)时,会执行这行代码,通过echo命令输出字符串“相等”
else:如果前面的条件判断结果为假(即num1的值和num2的值不相等),就会执行eIse后面的代码块。
echo不相等:当条件不满足(也,就是.num1,和num2不相等)时,会执行这行代码,通过echo命令输出字符串“不相

总体来说,这段代码就是先定义了两个具有不同初始值的变量,然后通过条件判断来比较这两个变量的值是否相等:并根据判断结果输出相应的字符串(“相等”或者“不相等”)。

标签:shell4,相等,name,num2,echo,判断,num1
From: https://blog.csdn.net/qq_73187469/article/details/144497638

相关文章