泷羽sec----shell编程基础(4)

用户交互

声明!
学习视频来自B站up主 泷羽sec 有兴趣的师傅可以关注一下,如涉及侵权马上删除文章,笔记只是方便各位师傅的学习和探讨,文章所提到的网站以及内容,只做学习交流,其他均与本人以及泷羽sec团队无关,切勿触碰法律底线,否则后果自负!!!!有兴趣的小伙伴可以点击下面连接进入b站主页B站泷羽sec

前言

我们已经知道如何创建脚本并使用,那么,在平常使用一些命令的时候,命令后面都会跟上参数,也就是我们输入的值,就像python中的input一样,那么如何实现呢,可以使用read关键字来达到这种效果

首先进入bash环境,在终端输入bash即可

如:

read name age  //这里就会定义两个变量用于接收用户后面输入的信息,是按照顺序接收


echo $name	//输出变量,发现用户输入的信息会输出
echo $age

image

那么在python中,用户交互时,会提示该输入什么,这里怎么实现呢,可以使用read-p参数

read -p "请输入你的姓名:" name
//这时候会在这里显示-p指定的信息在这里,然后用户输入即可
echo $name	//输出用户提交的信息

image

那么,如果在与用户进行交互时,用户长时间的不输入信息,也会占据进程的,所以可以限制一个时间段,来避免这种情况。那么就可以使用read-t参数

read -t 10 -p "请输入你的姓名:" name
//这时候,如果超过10秒钟,用户不输入任何信息,就会终止退出
echo $name

image

那么,对于如果与数据库交互存储数据的话,如果用户的输入总是一些很长不是很有必要的数据的话,可以使用read-n参数,来限定用户输入字符的个数

read -t 10 -n 5 -p "请输入你的姓名:" name
//这时候就会限制用户输入的字符个数,如果超出5个字符就会截取输入的字符并退出
echo $name

image

综上所述,都是在终端处理的,那么代码如何写呢

vim 1.sh

read -p "请输入你的名字" name
echo "你输入的姓名是:$name 请确认"

image

if条件判断

在说if之前,先知道关系运算符,不然怎么判断呢

关系运算符

-eq	相等
-lt	小于
-gt	大于
-ne	不等于
-ge	大于等于
-le	小于等于
只能对数值进行判断,字符串不行
这些或对或少都见过,在html编码中可以看到,会把<>=!转换成上面的形式
if的框架

if [条件判断] ; then	//如果条件判断为ture或1,然后执行1,then就是然后的意思
	执行1
else				//如果执行条件不为true或1(也就是否则的意思),执行2
	执行2
fi					//fi表这个if结束,也就是finish的意思

[条件判断]可替换test进行测试,也就是debug的意思
test 条件判断 : then	//就这种形式

如,判断,判断两个值是否的大小

read -p "请输入两个值进行比对大小" num1 num2

#num1=9
#num2=8
if [ $num1 -gt $num2 ] ; then
	echo "$num1大于$num2"
elif [ $num1 -lt $num2 ] ; then
	echo "$num1小于$num2"
else
	echo "$num1等于$num2"
fi

image

posted @   whitehe  阅读(3)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
点击右上角即可分享
微信分享提示