Shell學習筆記 - 循環語句


一、for循環

1. 語法格式1

for 變量 in 值1 值2 值3 ...
do
    程序
done

 說明:程序將遍歷所有的值,賦值給變量,然后在執行程序。也就是說,后面接多少個值,程序就循環多少次。

2. 示例1:遍歷5個數,進行輸出

#!/bin/bash

for i in 1 2 3 4 5
do
    echo $i
done

#輸出結果
1
2
3
4
5

3. 示例2:遍歷目錄下的所有文件,進行輸出文件名

#!/bin/bash

for file in $(ls) #注:ls會將當前目錄下的所有文件列出來,然后逐個賦值給file,就可以逐個輸出了
do
    echo $file
done

 

4. 語法格式2

for (( 初始值;循環控制條件;變量變化 ))
do
    程序
done

 

說明:這種格式和C語言for循環的格式是一樣的,區別只是需要用雙括號括住循環條件。

5. 示例1:計算1到100的總和

#!/bin/bash

sum=0
for ((i=1;i<=100;i=i+1))
do
    sum=$(($sum+$i)) #同樣可以使用,sum=$[$sum+$i]
done

echo $sum

#輸出
5050

 

二、while循環

1. 語法格式

while [條件判斷式]
do
    程序
done

 

說明:當條件判斷式成立時,才會執行程序,直到條件判斷式不成立時,才退出循環。

2. 示例:計算1到100的總和

#!/bin/bash

i=1
sum=0

while [ $i -le 100 ]
do
    sum=$(( sum+i ))
    i=$(( i+1 ))
done

echo $sum

#輸出
5050

 

三、until循環

1. 語法格式

until [條件判斷式]
do
    程序
done

 

說明:until循環和while循環是相反的,當條件判斷式不成立時,才會執行程序,直到條件判斷式成立,才退出循環。

2. 示例:計算1到100的總和

#!/bin/bash

i=1
sum=0

until [ $i -gt 100 ]
do
    sum=$(( sum+i ))
    i=$(( i+1 ))
done

echo $sum

#輸出結果
5050


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM