1.for循环
这里介绍两种fo循环:列表形式的for循环,类C语言的for循环
(1)列表形式的for循环:累加求和
# #/bin/bash sum=0 for i in {1..100} do let "sum+=i" done echo "sum=$sum" 这里使用简写形式的列表{1..100}:表示1 2 3 4 ......100,主要放在大括号里面,第一次循环i等于列表中的第一个元素,也就是1,第二次等于第二个元素(2)...一直执行100次结果:
lan@lan_ubuntu:~/桌面/program/课本$ ./for6.sh sum=5050 (2)类C语言的for循环 lan@lan_ubuntu:~/桌面/program/课本$ cat for7.sh #!/bin/bash sum=0 for((i=0;i<=100;i++)) do sum=`expr $sum + $i` #注意了这个不是单引号,是反引号,Esc和Tab之间的那个键就是啦 done echo "sum=$sum" 结果 lan@lan_ubuntu:~/桌面/program/课本$ ./for7.sh sum=5050 还是这种写法看起来好一点注意要用两个括号
while循环
while循环,循环依据是:如果条件表达式 [ ... ],的值为真,继续循环,直到条件表达式的值为假,结束循环。
lan@lan_ubuntu:~/桌面/program/课本$ cat while.sh #!/bin/bash i=1 sum=0 while [ $i -le 100 ] do sum=`expr $sum + $i` i=`expr $i + 1` done echo The sum is $sum 结果: lan@lan_ubuntu:~/桌面/program/课本$ ./while.sh The sum is 5050 循环的do和done其实类似于C语言中的{和}。until循环语句
until 条件表达式
do
命令列表
done
如果条件表达式的值为假,until循环,继续循环,直到条件表达式为真的时候才终止循环
例:累加1+2+3+...+100=5050
lan@lan_ubuntu:~/桌面/program/课本$ cat until.sh #!/bin/bash #until 语句:如果条件表达式的值为假,继续循环,直到表达式的值为真循环结束 i=1 sum=0 until [ $i -gt 100 ] do sum=`expr $sum + $i` i=`expr $i + 1` done echo "sum=$sum" 结果: lan@lan_ubuntu:~/桌面/program/课本$ ./until.sh sum=5050