shell双重循环、IFS分隔符、趣味图形、九九乘法表
2021/8/2 7:07:31
本文主要是介绍shell双重循环、IFS分隔符、趣味图形、九九乘法表,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
shell双重循环、IFS分隔符、趣味图形、九九乘法表
一、shell脚本值双重循环
1、跳出循环之break命令
for ( (a=1; a<=5; a++) ) do echo "outer loop: $a" for ( (b=1; b<=50; b++) ) do if [ $b-eq 5 ] then break #如果是break 2则代表跳出2层循环 if echo "inter loop: $b" done done
2、中止循环之continue命令
-
continue中止某次循环中的命令,但不会完全中止整个命令
for ((a=1; a<=15; a++) ) do if [ $a -gt 5 ] && [ $a -lt 10 ] then continue fi echo "current value: $a" done
continue和exit的区别
二、IFS分隔符
1、概述
- 默认包含空格,制表符,换行符
- 用 set | grep IFS 命令查看
2、格式
IFS=$' \t\n'
#修改成只换行 IFS=$' \n' IFS=: IFS=',' IFS. OLD=$IFS IFS=$' \n' ... IFS=$IFS.OLD
3、示例
(1)换行符确认
(2)输出环境变量PATH所包含的所有目录以及其中的所有可执行文件
三、shell趣味图形
1、直线
#!/bin/bash for ((a=1;a<=20;a++)) do echo -n "*" done echo ""
2、矩形
#!/bin/bash for ((a=1;a<=10;a++)) do for ((b=1;b<=15;b++)) do echo -n "*" done echo "" done
3、正三角形
#!/bin/bash a=0 while [ $a -le 9 ] do echo -n "*" b=1 while [ $b -le $a ] do echo -n "*" let b++ done echo "" let a++ done
4、倒三角形
#!/bin/bash a=0 while [ $a -le 9 ] do b=8 while [ $b -ge $a ] do echo -n "*" let b-- done echo -n "*" echo "" let a++ done
5、反三角
#!/bin/bash a=0 while [ $a -le 9 ] do b=9 while [ $b -ge $a ] do echo -n " " let b-- done c=0 while [ $c -le $a ] do echo -n "*" let c++ done echo '' let a++ 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<=$[$a*2-1];c++)) do echo -n "*" done echo "" done
7.平行四边形
#!/bin/bash for ((i=6;i>=1;i--)) do for((k=1;k<=i;k++)) do echo -n " " done for (( j=6;j>=1;j--)) do echo -n "*" done echo "" done
8、等腰梯形
#!/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*2-1];d++)) do echo -n "*" done echo "" done
9、菱形
(1)不可变菱形
#!/bin/bash for ((a=1;a<=9;a++)) do for ((b=9;b>=$a;b--)) do echo -n " " done for ((c=1;c<=$[$a*2-1];c++)) do echo -n "*" done echo "" done for ((d=1;d<=10;d++)) do for ((e=2;e<=$d;e++)) do echo -n " " done for ((f=10;f>=$d;f--)) do echo -n "*" done for ((g=9;g>=$d;g--)) do echo -n "*" done echo "" done
(2)可变大小的菱形
#!/bin/bash read -p "请输入数字: " i for ((a=1;a<=$i;a++)) do for ((b=$i;b>=$a;b--)) do echo -n " " done for ((c=1;c<=$[2*a-1];c++)) do echo -n "*" done echo "" done for ((d=$i-1;d>=1;d--)) do for ((e=$i;e>=$d;e--)) do echo -n " " done for ((f=$d;f>=1;f--)) do echo -n "*" done for ((g=$d;g>1;g--)) do echo -n "*" done echo "" done
四、九九乘法表
#!/bin/bash for ((a=1;a<=9;a++)) # 1~9循环 do for ((b=1;b<=$a;b++)) # 内循环b的值不能超过a do c=$[$a*$b] # a*b等于1*1,2*2 echo -n -e "$a*$b=$c\t" # 输出c的值不换行显示,以及每行空格间隔\t done echo "" # 默认隐藏了换行符 \n done
这篇关于shell双重循环、IFS分隔符、趣味图形、九九乘法表的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-09-21订单系统资料入门教程:轻松管理你的订单
- 2024-09-21Java部署资料:新手入门教程
- 2024-09-21Java部署资料:新手入门教程
- 2024-09-21Java订单系统资料:新手入门教程与实战指南
- 2024-09-21Java管理系统资料入门教程
- 2024-09-21从零开始学习Java监控系统资料
- 2024-09-21Java就业项目资料:新手入门的必备教程
- 2024-09-21Java全端资料:初学者指南
- 2024-09-21Java全栈资料入门教程及资源汇总
- 2024-09-21Java日志系统资料入门教程