本例主要使用二维循环输出字符串

#!/usr/bin/bash
#生成三角形当前行字符
function createline() {
Space=$(($2-$1))
Count=$(($1+$2-$3))
for ((j=1;j<=$(($Count + $Space));j++))
do
if [ $j -gt $Space ];then
echo -n "*"
else
echo -n " "
fi
done
}
#接收用户输入数据,并作合法性处理
while true
do
read -p "请输入三角形高度:" Num
if [ -z $Num ];then
echo "输入不能为空,请重新输入"
else
if [[ ! "$Num" =~ ^[0-9]+$ ]];then
echo "您输入的不是数字,请重新输入"
else
break
fi
fi
done
#取得用户输入的数字开始循环输出每一行字符
s=$Num
for ((i=1;i<=$Num;i++))
do
createline $i $Num $s
let s--
printf "\n"
done



Asynq任务框架
MCP智能体开发实战
WEB架构
安全监控体系






