声明
学习视频来自B站UP主 泷羽sec,如涉及侵泷羽sec权马上删除文章。
笔记只是方便各位师傅学习知识,以下网站只涉及学习内容,其他的都与本人无关,切莫逾越法律红线,否则后果自负
这节课旨在扩大自己在网络安全方面的知识面,了解网络安全领域的见闻,了解学习哪些知识对于我们渗透测试有帮助,避免盲目地学习降低效率。
B站超链接:shell编程(4)脚本与用户交互以及if条件判断_哔哩哔哩_bilibili
———————————————————————————————————————————
shell脚本与用户交互
利用read name age 指定变量信息 shenying 18 之后利用命令
read name ageecho $name 接受用户输入echo $age 接受用户输入
这个例子可能并不清晰,我们利用read
read -p "请输入您的姓名" nameecho $name(接受用户的输入)
再举个例子
read -t 10 -p "请输入您的姓名:" name
-t(指定时间)
如果用户没有在10秒内输入将自动退出程序,在10秒内输入会执行成功
限制用户输入字符个数
read -n 3 -t 10 -p "请输入您的姓名:" name-n(限制字符输入的数量,到达指定字符会结束输入)
用脚本编写模拟
vim c.shread -p "请输入您的姓名:"echo "您输入的姓名是:$name,请您确认!"
关系运算符
vim c.sh
num1=66
num2=66if [ $num1 -eq $num2 ] ; thenecho 相等
elseecho 不相等
fi
第二次运行改了变量,所以输出结果会变
首先定义两个变量,然后通过if条件来判断进行两个简单的条件判断,再接入关系运算符
-eq(相等)-lt (小于)-gt (大于)-ne (不等于)else(反转)只能对数值进行判断,无法对字符串进行判断
[]可以换成test,同样可以进行
条件判断部分:
if [ $num1 -eq $num2 ] ;
- 这里使用 if 语句来进行条件判断。在 if 语句的条件表达式中,[ ](注意实际使用时 [ 和它里面的内容、] 和它前面的内容都要有空格隔开)
- 在 Shell脚本中用于进行各种测试操作。$num1 和 $num2 是对前面定义的两个变量 num1 和 num2的引用,获取它们的值来参与条件判断。
- -eq是一个比较操作符,用于判断两个值是否相等(在数值比较的语境下,这里就是判断 num1 和 num2 的值是否相等)
- 所以整个条件表达式就是在测试num1和num2的值是否相等
执行逻辑部分:
- then:如果前面的条件判断结果为真(即 num1 的值和 num2 的值确实相等),那么就会执行 then 后面的代码块
- echo 相等:当条件满足(也就是 num1 和 num2 相等)时,会执行这行代码,通过 echo 命令输出字符串 “相等”
- else:如果前面的条件判断结果为假(即 num1 的值和 num2 的值不相等),就会执行 else 后面的代码块。
- echo 不相等:当条件不满足(也就是 num1 和 num2 不相等)时,会执行这行代码,通过 echo 命令输出字符串 “不相等”
总的来说,这段代码就是先定义了两个具有不同初始值的变量,然后通过条件判断来比较这两个变量的值是否相等,并根据判断结果输出相应的字符串(“相等”或者 “不相等”)
欸,看到这有些大佬可能会说,这篇文章里有一个错误。
其实我是故意的