CentOS 7 Shell腳本編程第十三講 循環語句

循環語句主要有while do while for select等,循環語句主要用於重複執行命令,直到達到終止循環條件。bash

首先介紹while語句。spa

[root@promote ~]# cat testwhilev1.0.sh 
#!/bin/bash
num=0
while (( num <2 ))
do
((num++))
echo $num
done 
[root@promote ~]# bash testwhilev1.0.sh 
1
2

while 語句表達式成立時,執行語句。條件不成立執行done結束循環語句。沒有控制好循環條件容易造成死循環,程序無終止執行條件。code

再看一個例子。it

[root@promote ~]# cat testwhilev1.1.sh
#!/bin/bash
count=0
while [[ $count < 5 ]] 
do
    ((count ++ ))
    echo $count
done
[root@promote ~]# bash testwhilev1.1.sh
1
2
3
4
5
[root@promote ~]# 
#思考問題,代碼執行完畢$count等於幾?

until 做用和 while 相反,循環條件不成立執行語句,直到條件成立爲止。until 不經常使用,簡單瞭解便可。for循環

while 和 until 語句都含有 do done 結構。test

for循環相似while循環。先看示例代碼。本段代碼執行結果爲打印1到3。select

[root@promote ~]# cat testif.sh
#!/bin/bash
for (( i=1; i<=3; i++ ))
do
	echo $i
done
[root@promote ~]# bash testif.sh
1
2
3
[root@promote ~]#

for循環也能夠製造死循環。循環

#死循環,須要強制退出
[root@promote ~]# cat testifv1.1.sh
#!/bin/bash
for (( i=1;; i++))
do
echo $i
done
[root@promote ~]# 

#倒序打印
[root@promote ~]# cat testforv1.2.sh
#!/bin/bash
for (( i=5;i>0;i-- ))
do
echo $i
done
[root@promote ~]# bash testforv1.2.sh
5
4
3
2
1
[root@promote ~]

根據代碼可知for ( ) 內語句塊分別爲初始條件,判斷條件,爲true退出,可選,循環語句,可選。須要注意括號內兩個分號不要遺漏程序

select循環和其餘循環不一樣。思考

[root@promote ~]# cat testselectv1.0.sh
#!/bin/bash
select name in bill tom john carry linda 
do
    echo $name
    exit
done
#操做中輸入2,輸入完成退出
[root@promote ~]# bash testselectv1.0.sh
1) bill
2) tom
3) john
4) carry
5) linda
#? 2
tom
#錯誤輸入無輸出
[root@promote ~]# bash testselectv1.0.sh
1) bill
2) tom
3) john
4) carry
5) linda
#? 7

[root@promote ~]#
相關文章
相關標籤/搜索