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
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章