shell

声明:声明:以下内容来自泷羽sec的学习笔记,仅作学习,如有按照知识进行破环网络安全,后果自负!!

泷羽sec:https://space.bilibili.com/350329294/channel/collectiondetail?sid=4031268&spm_id_from=333.788.0.0

资源自取:

链接:https://pan.baidu.com/s/1c4PplGyH7oG217jPQtqGQg?pwd=fnb3

提取码:fnb3

链接:https://pan.quark.cn/s/f5865bd3f98a

四、shell的关系运算

1.shell的交互

  • read :用于从标准输入中读取一行,并将读取的单行根据IFS(内部字段分隔符)变量分裂成多个字段,然后将分割后的字段分别赋值给指定的变量列表。如果没有指定任何变量,则分割后的所有字段都存储在特定变量REPLY 中

    同样还用于文件读取

    基本用法
    • 读取单个变量‌:read variable 会将整行输入赋值给指定的变量。
    • 读取多个变量‌:read var1 var2 var3 会将输入行分割,第一个字段赋值给var1,第二个字段赋值给var2,第三个字段赋值给var3。如果字段数量多于变量数量,多余的字段会被忽略。
    • 读取到数组‌:使用-a选项可以将输入分割后存储到数组中。例如:read -a array会将输入分割后存储到数组array中。
    选项说明
    • -p "prompt":在等待输入前显示提示信息。
    • -t seconds:设置等待输入的时间(秒)。
    • -n nchars:读取指定数量的字符后结束。
    • -s:隐藏输入数据,常用于密码输入。
    • -d delim:使用指定的字符作为输入结束标志。
    • -r:禁止对输入行进行转义处理

先进入bash 然后输入

read -t 10 -p “pease input your name:” name

如果不输入名字,那么10秒之后退出 ;输入了,可以通过 echo $name 获取的name的值

read -t 10 -n2 -p “please input your name:” name

后面加上-n 可以限定输入的字符,但记住不能有空格,否则会报错

2.shell的关系运算符

首先定义两个变量然后通过if条件判断来进行两个简单的条件判断 再接入关系运算符。
-eq(相等)
-lt(小于)
-gt(大于)
-ne(不等于)
else (反转)

tips:只能对数值进行判断,无法对字符串进行判断

编写shell脚本内容如下

name= 89

name2= 90

if [ $name -eq $name2 ] ;

then

echo ”xiangdeng“

else

​ echo ”buxiangdeng“

fi

脚本解释:

shell 初始化两个变量的值,一个是name变量值为89,一个变量值为90;

通过了条件判断语句 if 进行判断两者比较的值为真 还是为假;如果if中比较两者的值时相等的,则为真,输出then的 echo ;如果if中比较两者的值时相等的,则为假,则输出else的echo

注意:[] 里面两边都需要增加空格

tips:if语句的结束标记。在shell脚本中,每个ifforwhile等控制结构都需要一个结束标记来表示语句的结束,这个结束标记就是fi。在你的例子中,fi就是if语句的结束标记

现在进行比较,如果是两个变量的值相等,那么输出xiangdeng 如果不相等则输出buxiangdeng

name= 90

name2= 90

if [ $name -eq $name2 ] ;

then

echo ”xiangdeng“

else

​ echo ”buxiangdeng“

fi

name=60

name2=90

if [ $name -lt $name2 ] ;

then

echo ”True“

else

​ echo ”False“

fi

name= 60

name2= 90

if [ $name -gt $name2 ] ;

then

echo ”True“

else

​ echo ”False“

fi

name= 60

name2= 90

if [ $name -ne $name2 ] ;

then

echo ”True“

else

​ echo ”False“

fi

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值