测试语句

测试语句:测试上一个语句的返回值
返回值:0 代表成功 非0 代表失败

  1. 条件测试语句

[ 条件表达式 ]。两边均有空格,条件测试语句不能配合管道符。
文件测试所用的参数:
在这里插入图片描述

  1. 逻辑测试语句
(1)|逻辑与(&&):当前面的命令执行成功后才会执行后面的命令
(2)|逻辑或(||):当前面的命令执行失败后才会执行后面的命令
(3)|逻辑非(!):条件测试中的判断结果取反

整数比较运算符

|     操作符                   作用
|      -eq                判断两数是否等于
|      -ne                判断两数是否不等于
|      -gt                判断两数是否大于
|      -lt                判断两数是否小于
|      -le                判断两数是否小于等于
|      -ge                判断两数是否大于等于
|

常见的字符串比较运算符

|     操作符         作用
|       =        比较字符串内容是否相同
|      !=       比较字符串内容是否不同
|      -z        判断字符串内容是否为空

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3.if语句
单分支:if…then…fi
双分支:if…then…else…fi
多分支:if…then…elif…then…else…fi

1.|
|命令ping:测试与目标主机的连通性  
|具体解释:
|ping在windows下一般只会尝试3次
|       在linux下会一直尝试下去,所以一般会有参数 -c 来规定尝试次数
|ping的参数:
|       -c     定义尝试次数
|       -i     定义每个数据包的发送间隔
|       -w     等待的超时时间,超于限定时间就不会在尝试
2.|
|/dev/null  : 被称作Linux黑洞的文件,把输出重定向到这个文件等同于删除数据,让用户的屏幕窗口保持简洁。
3.|创建用户并设置密码
echo “$PASSWD” | passwd --stdin $UNAME &> /dev/null

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
例:
测试文件是否存在:
在这里插入图片描述
在这里插入图片描述
变量代替路径,测试文件是否存在,不存在就创建:
在这里插入图片描述
在这里插入图片描述
多分支:判别优、良
在这里插入图片描述
在这里插入图片描述
4.for循环语句:
for循环语句允许脚本一次性读取多个信息,然后逐一对信息进行处理。

在这里插入图片描述
在这里插入图片描述
5.while循环语句:
若条件为真就继续执行,反之跳出循环。
在这里插入图片描述
参考:

vim Guess.sh
#!/bin/bash
PRICE=$(expr $RANDOM % 1000)                #使用$RANDOM变量来调取出一个随机的数值(范围为0~32767),将这个随机数对1000进行取余操作,并使用expr命令取得其结果
TIMES=0                                     #创建TIMES变量,用于累计用户猜数字的次数
echo "商品实际价格为0-999之间,猜猜看是多少?"    
while true                                  #条件永远为真,循环会无限执行下去,下面会有exit 0语句终止脚本执行
do                                          #循环开始
read -p "请输入您猜测的价格数目:" INT          #read读取输入的数值
let TIMES++                                 #TIMES变量自增1,即猜数字次数累计1次
if [ $INT -eq $PRICE ] ; then               #如果输入的数字跟随机生成的数字一致,说明猜对了。(第三行生成的数字不在循环内,因此知道程序结束,生成的数字都是不会变的)
echo "恭喜您答对了,实际价格是 $PRICE"
echo "您总共猜测了 $TIMES 次"
exit 0                                      #终止脚本执行
elif [ $INT -gt $PRICE ] ; then             #输入数字比生成数字高,提示太高
echo "太高了!"
else                                        #兜底,既猜不对数字,又不是比生成数字高,那就是太低了
echo "太低了!"      
fi                                          #if语句结束
done                                        #while循环结束

该脚本只能接收数字,如果输入数字以外的字符,脚本就会奔溃并报错,并判断条件一定跳到兜底,输出“太低了”。

例:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
6.case语句:
case语句使用于需要进行多重分支的应用情况
在这里插入图片描述
case语句结构特点如下:

case行尾必须为单词 in 。
每个模式必须以右括号 ) 结束。
匹配模式中可是使用方括号表示一个连续的范围,如[0-9];使用竖杠符号“|”表示或。
最后的“*)”表示默认模式,当使用前面的各种模式均无法匹配该变量时,将执行“*)”后的命令序列。

case语句实例:由用户从键盘输入一个字符,并判断该字符是否及格。:
例:
在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值