4.shell循环嵌套,跳出循环

在shell中的for循环和while循环嵌套结构和其他语言没啥不同,就是循环中又套一个循环或多个循环

举例:

用while打印万年例题星三角

# *此命令表示匹配当前目录下的文件名
# 用*之前记得转义成普通符号\*

#! /bin/bash
read -p "行数:" Line
read -p "符号:" char    # 用*之前记得转义\*
a=1
while [ $a -le $Line ]  #第一层循环控制行数
do
	b=1
	while [ $b -le $a ]  #第二层循环控制每行星数
	do
		echo -n "$char"
		b=`expr $b + 1`
	done
	echo   #输出空白,相当于换行
	a=`expr $a  + 1`
done
#####################
行数:3
符号:*
*
**
***

有时需要对循环达到条件后执行跳出:breakcontinue
break:跳出整个循环
continue:跳出本次循环进行下次循环,注意是离它最近的那个循环

其他:

echo 后可接-n参数,表示不换行打印

echo "print"
read line   #输入5

print
5
#############
echo -n "print"
read line  #输入5

print5

read 后可接-p参数,也不换行

echo "print"
read aaa #输入666

print
666
###########
read -p "print" aaa #输入666
echo $aaa 

print666
666

#嵌套结构在使用中非常普遍,但也要注意嵌套层数,嵌套太多,执行效率会低下,一定要寻找最合适的方法,写出效率高,结构简单的代码。

#####此文纯属小白笔记,有不对之处大佬使劲喷,杠精请绕过,#####
在这里插入图片描述

原创文章 35 获赞 58 访问量 5908

猜你喜欢

转载自blog.csdn.net/weixin_43221560/article/details/90340583
今日推荐