目录
双循环,两层for循环 外循环执行一次内循环执行一遍
外循环次数决定内循环执行遍数。
1、靠左的直角三角形
#!/bin/bash\
for ((a=1; a<=9; a++)) #9行
do
for ((b=1; b<=$a; b++))
do
echo -n "*"
done
echo " "
done
2、靠右的直角三角形
#!/bin/bash
for ((a=1; a<=9; a++))
do
#输出空倒三角
for ((b=9; b>=$a; b--))
do
echo -n " "
done
for ((c=1; c<=$a; c++))
do
echo -n "*"
done
echo " "
done
3、等腰三角形
#!/bin/bash
for ((a=1; a<=9; a++))
do
for ((b=9; b>=$a; b--))
do
echo -n " "
done
i=$[($a*2)-1]
for ((h=1; h<=$i; h++))
do
echo -n "*"
done
echo " "
done
4、平行四边形
#!/bin/bash
for ((a=1; a<=9; a++))
do
for ((b=9; b>=$a; b--))
do
echo -n " "
done
for ((c=1; c<=9; c++))
do
echo -n "*"
done
echo " "
done
5、梯形
方法一:平行四边形后加*
#!/bin/bash
for ((a=1; a<=9; a++))
do
for ((b=9; b>=$a; b--))
do
echo -n " "
done
for ((c=1; c<=9+$a; c++))
do
echo -n "*"
done
echo " "
done
方法二:在平行四边形基础上加三角形
#!/bin/bash
for ((a=1; a<=9; a++))
do
for ((b=9; b>=$a; b--))
do
echo -n " "
done
for ((c=1; c<=9; c++))
do
echo -n "*"
done
for ((d=1; d<=$a; d++))
do
echo -n "*"
done
echo " "
done
6、等腰梯形
#!/bin/bash
for ((a=1; a<=9; a++))
do
for ((b=9; b>=$a; b--))
do
echo -n " "
done
for ((c=1; c<=9+$a; c++))
do
echo -n "*"
done
for ((d=1; d<=$a; d++))
do
echo -n "*"
done
echo " "
done
7、菱形
方法一:
#!/bin/bash
#上三角
for ((a=1; a<=9; a++))
do
for ((b=9; b>=$a; b--))
do
echo -n " "
done
i=$[($a*2)-1]
for ((c=1; c<=$i; c++))
do
echo -n "*"
done
echo " "
done
#下三角
for ((a=1; a<=8; a++))
do
for ((b=0; b<=$a; b++))
do
echo -n " "
done
i=$[17-$a*2] #17是上下加起来总行数
for ((c=1; c<=$i; c++))
do
echo -n "*"
done
echo " "
done
方法二:
#!/bin/bash
#上面的三角形
read -p "请输入一个奇数来建立菱形:" z
y=$[z/2]
x=$[y+1]
for ((a=1;a<=x;a++)) #行数
do
for ((b=y; b>=a;b--)) #列数
do
echo -n " "
done
i=$[($a*2)-1]
for ((c=1;c<=i;c++)) #列数
do
echo -n "*"
done
echo " "
done
#下面的三角形
for ((a=1; a<=y; a++))
do
for ((b=1; b<=a; b++))
do
echo -n " "
done
i=$[z-2*$a]
for ((c=1; c<=i; c++))
do
echo -n "*"
done
echo " "
done
8、输出环境变量PATH所包含的所有目录以及其中的所有可执行文件
#!/bin/bash
IFS=$IFS':'
IFS=':'
for i in $PATH
do
echo "环境变量PATH包含的所有目录:$i"
for f in $i/*
do
if [ -x $f ]
then
echo "具有执行权限的文件:$f"
fi
done
done