Shell入门教程:流程控制(6)while 循环

while循环的语法:

while 条件测试
do
    命令区域
done

举例:

#!/bin/bash

declare -i i=1
declare -i sum=0

while ((i<=10))
do
	let sum+=i
	let ++i
done

echo $sum

 

使用while, 读取文件内容

while循环,经典的用法是搭配转向输入,读取文件的内容,做法如下:

#!/bin/bash

while read line
do
	echo $line
done < cvsfile
  • 行3,使用read由标准输入读取数据,放入变量line中,如果读到的数据非空,就进入循环。
  • 行6,将cvsfile的内容转向输入,交给read读取。

再举一例:

#!/bin/bash
IFS=':'
while read f1 f2 f3 f4 f5 f6 f7
do
	echo "账号:$f1,login Shell 是: $f7"
done < "/etc/passwd"

行3,读取/etc/passwd各行账号数据,并将各字段放入变量f1~f7。

 

while无穷循环

whlie ((1))
do
	echo '夜不眠'
done

把 ((1)) 改成 [ 1 ] 也可以。

或者:

whlie true
do
	echo '夜不眠'
done

或者:

whlie :
do
	echo '夜不眠'
done

键入Ctrl + C,可终止循环。

posted @ 2016-07-14 11:50  52php  阅读(389)  评论(0编辑  收藏  举报