奶奶常说——循环语句之echo命令,for循环,while循环,until循环,奶奶,奶奶,奶奶!

引言,

一.echo命令 – 输出字符串或提取Shell变量的值

1.格式

在这里插入图片描述

2.常用参数

echo -n 表示不换行输出

echo -e 输出转义字符,将转义后的内容输出到屏幕上

常用的转义字符如下:   \b 转义后相当于按退格键(backspace),但前提是"\b"后面存在字符;"\b"表示删除前一个字符,"\b\b"表示删除前两个字符。

\c 不换行输出,在"\c"后面不存在字符的情况下,作用相当于 echo -n; 但是当"\c"后面仍然存在字符时,"\c"后面的字符将不会被输出。

\n 换行,被输出的字符从"\n"处开始另起一行。 
 
\f 换行,但是换行后的新行的开头位置连接着上一行的行尾;

\v 与\f相同;

\t 转以后表示插入tab,即横向制表符;

\r 光标移至行首,但不换行,相当于使用"\r"以后的字符覆盖"\r"之前同等长度的字符;但是当"\r"后面不存在任何字符时,"\r"前面的字符不会被覆盖

\\ 表示插入"\"本身;

二.for循环语句

1、for循环结构
读取不同的变量值,用来逐个执行同一组命令
在这里插入图片描述

2.实验

①.例题1
计算从1到100所有整数的和
在这里插入图片描述

②.例题2
过滤出从1到100所有整数的奇偶数
在这里插入图片描述

在这里插入图片描述

③.例题3
提示用户输入一个小于100的整数,并计算从1到该数之间所有整数的和
在这里插入图片描述
在这里插入图片描述
④、例题4
求从1到100所有整数的偶数和、奇数和
在这里插入图片描述
在这里插入图片描述
⑤.例题5
检测指定范围主机是否通信,并将通信的主机ip输出到文件host_ip中4
在这里插入图片描述
在这里插入图片描述
⑥.例题6
输出/dev目录中的所有可执行文件或目录
在这里插入图片描述

在这里插入图片描述
⑦.例题7
执行脚本输入用户名,若该用户存在,输出提示该用户已存在;若该用户不存在,提示用户输入密码,建立用户并设立其密码
在这里插入图片描述
在这里插入图片描述

三.while循环

只要条件成立,则反复循环,不成立即停止
1.while语句结构

while 条件测试操作
do
   命令序列
done

在这里插入图片描述
实验
1、计算从1到100所有整数的和
在这里插入图片描述
在这里插入图片描述
2、提示用户输入一个小于100的整数,并计算从1到该数之间所有整数的和
在这里插入图片描述
在这里插入图片描述
3、批量添加用户
用户名以qqq开头,按数字顺序进行编号
一共1-20,添加20个用户
初始密码均设为123456
在这里插入图片描述
在这里插入图片描述

四.until循环

重复测试某个条件,只要条件不成立则反复循环
1、until语句结构

until 条件测试操作
do  
   命令序列
done

在这里插入图片描述
实验
1、计算1~50的和
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

五.实验:购物

逛淘宝选购商品,每家商店有五种商品选购(衣服500元,裤子400元,鞋子350元,帽子150元,袜子50元),每次选购完或不买都会提示用户是否继续逛下一家商店,如果不再继续逛的话进行购物车结算总额。

[root@promote opt]#vim shopping.sh

#!/bin/bash
#每家商店有五种商品选购,每次选购完或不买都会提示用户是否继续逛下一家商店,如果不再继续逛的话进行购物车结算总额。
#衣服500元
#裤子400元
#鞋子300元
#帽子150元
#袜子50元

sum=0
for ((;;))
do
 echo "1、衣服:500元"
 echo "2、裤子:400元"
 echo "3、鞋子:300元"
 echo "4、帽子:150元"
 echo "5、袜子:50元"

read -p "请选择您想要购买的商品:" a
case $a in
1)
  echo "您已购买了衣服500元"
  let sum+=500
;;
2)
  echo "您已购买了裤子400元"
  let sum+=400
;;
3)
  echo "您已购买了鞋子300元"
  let sum+=300
;;
4)
  echo "您已购买了帽子150元"
  let sum+=150
;;
5)
  echo "您已购买了袜子50元"
  let sum+=50
;;
*)
  echo "欢迎下次光临,您本次消费共计$sum元"
break
esac

read -p "您选择继续购物还是结算购物车?(y/n)" b
if [ $b = y ] ; then
continue
elif [ $b = n ] ; then
  echo "欢迎下次光临,您本次购物共计消费$sum元"
break
else
  echo "请您正确输入"      
fi
done

在这里插入图片描述

总结

这个题,图有点长,我就不贴了,各位可以把我的命令复制拿去整理一下看看,看能否再进行完善,而且,这题使用while和until做成死循环,配合continue和break也是一样的效果,case和if语句的使用看个人喜好

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值