一、循环
1.for循环
bash脚本中的for循环,编辑bash文件1.sh,输入代码如下:
(例子中的代码目的是输出1到10的数字)
运行1.sh,即在终端输入bash 1.sh,得到的结果如下:
执行结果分析:第一个for循环格式中没有给后面的数字加" ",使得这些数字并非是一个整体,但是第二个for循环格式给后面的数据加了" ",也就是把后面的数字都看作是一个整体,所以输出的时候两个for循环输出结果又差别!!!
2.while循环
while循环示例如下:编辑bash文件2.sh,在其中输入如下代码:(输出0到10的值)
代码分析:while循环在这里判断的是var0的值是否小于范围limit的值,若小于则输出var0的值,echo -n 的意义是不换行;var0=$((var0+1))表示的是将var0加1.
运行2.sh文件得到的结果如下:
3.until循环
until循环的示例如下:编辑3.sh文件,输入以下代码:(当输入的指令为指定指令时,退出程序)
代码分析:这里为END赋值为end,用until循环,使用read inner输入值,当输入的值与until代码中的END相同时,则退出程序。
运行结果如下:(画了红色线的部分为键盘输入的内容)
二、嵌套循环
嵌套循环的理解和c语言等编程语言的理解是相似的
具体示例如下:编辑a.sh文件,输入以下代码:(嵌套输出inner loop 和 outer loop)
代码分析:首先将outer赋值为1,使用for循环,在a循环中嵌套一个b循环。
输出结果如下:
三、循环控制
1.break
break即表示终止循环,具体示例如下:(输出小于6的值)
代码分析:首先是设置范围,执行while循环,判断此时的a是否符合条件,然后将a++,判断a是否大于5,如果满足,则执行break语句!
运行结果为:
2.continue
continue语句即表示跳过改循环体,具体事例如下:(输出1到10中3和6以外的值)
代码分析:这里首先是使用while循环语句,保证值在1到10之间,在while语句后有一个if判断语句,表示当a的值等于3或者是等于6时,跳出循环。
运行结果如下:
四、测试与分支
1.case (in) / esac 格式
case在bash脚本作用相当于switch在c语言中的作用,具体事例如下:
代码分析:输入keypress,这里case "keypress" in 是格式,切记在exit 0 的前面要加上esac!!!这都是case的格式!!!
运行结果如下:(划红线的部分为键盘输入内容)
2.select语句
select语句可以建立菜单,具体示例如下:(选择你喜欢的蔬菜)
代码分析:select 语句的格式如上,in后面的单词之间需要空格!!!开头的提示语句需要使用PS3为量,改为其他的字符串会显示不出来!或者可以直接把一整句改为echo "Choose your favorite vegetable:" 还有一点一定要注意的就是在 done 的前面一定要加上break,否则程序就会一直执行,不能终止!!!
执行结果如下: