shell脚本之for循环

一、循环中的常见语句

1.1 echo 打印
  • -n :表示不换行输出
  • -e :输出转义字符
    • \b :相当于退格键(backspace)
    • \n :换行,相当于回车
    • \f :换行,换行后的新行的开头连着上一行的行尾
    • \t :插入一个tab键,横向制表符,相当于一个大空格键

1.2 循环控制语句
break :跳出当前循环并终止

continue:跳出当前循环,如果条件仍满足,继续执行循环

exit:满足条件,立即退出脚本

对于多层循环,在内层循环使用break、continue只是跳出当前层的循环,如果想要跳出多层循环,可以在break、continue后加上跳出的层数,比如要跳出双循环可用break 2 ,continue 2。
 

1.3 while 和 until 的用法

while满足条件就执行循环,不满足条件才会退出。

while适用场景:死循环,不知道循环多少次,需要主动结束循环或者达到条件才结束循环

死循环:三种格式

  • while true #永远为真,即死循环
  • while [ 1 -eq 1 ] #相当于true,[ ]里是一个永远为真的条件
  • while :

until循环:条件不满足才执行循环,一旦条件成立,循环终止。即执行命令直到满足until的条件才终止。

二、练习

  1. 用户名存放在users.txt文件中,每行一个。判断文件里的用户名是否存在。
    如果用户存在,提示用户已存在
    如果用户存在,但是没有设置密码,要提示用户设置密码
    如果用户不存在,创建用户,然后给用户创建密码。

2、测试一个网段,C类私有地址,32位的网段,测试可以ping通的地址,保留到/opt/hosts.txt;如果不通,提示不通即可。

wait表示等待当前 Shell 中所有在前台或后台运行的子进程(包括通过 & 启动的后台任务)完成后再返回

3、购物例题:

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

验证

4、某山顶上有一颗香蕉树,一只猴子第一天从树上摘了若干根香蕉,当即就吃了一半,还不过瘾,又多吃了一根。第二天猴子又将剩下的香蕉吃了一半,禁不住诱惑,又多吃了一根香蕉。
依此类推,每天都将剩余的香蕉吃一半后再多吃一根。到了第十天,猴子发现只剩一根香蕉了,
请问这只猴子在第一天总共摘了多少根香蕉?


 验证

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值