Linux中的shell編程Ⅳ——for 循環、while循環

一、for循環

1.格式

for var in con1 con2 con3...
do
    程序段
done

以上面的例子來說,這個$var的變量內容在循環工作時:

  • 第一次循環時,$var的內容爲con1 ;
  • 第二次循環時,$var的內容爲con2 ;
  • 第三次循環時,$var的內容爲con3 ;

2.舉例

2.1 逐個打印

#!/bin/bash

for var in 1 2 3 4 5
do
	echo ${var}
done

運行:

[jingkong@muguangjingkong ~]$ sh test.sh
1
2
3
4
5

2.2 十以內整數和

#!/bin/bash

num=10
s=0
for ((i=0;i<$[num];i=i+1))
do 
	s=$((${s}+${i}))
done
echo ${s}

運行:

[jingkong@muguangjingkong ~]$ sh test.sh
45

二、while循環

1.不定循環最常見的兩種表達

while do done, until do done (不定循環)
一般來說 ,不定循環最常見的就是底下這兩種狀態了:

while [condition] <==中括號內的狀態就是判斷式
do  <==do是循環的開始!
    程序段落
done  <==done是循環的結束

while的中文是當…時,所以,這種方式說的是當condition條件成立時,就進行循環,直到condition的條件不成立才停止的意思。

還有另外一種不定循環的方式:

until [condition]
do
    程序段落
done

這種方式怡恰與while相反,它說的是當condition條件成立時,就終止循環,否則就持續進行循環的程序段。

以while來做個簡單的練習。假設要讓使用者輸入yes或者是YES才結束程序的執行,否則就一直進行告知用戶輸入字符串。

2.while實現逐行讀取

while read line
從文件或命令中逐行讀取

cat file|while read line
do
    echo $line
done

cat `ls ./*.txt`| while read line
do
    echo $line
done
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章