while循环
在上一篇博客中,我们详细介绍了for循环,本博客将会首先介绍while循环的基本用法,其次通过示例介绍使用方法。
##基本架构
while 语句
do
执行语句
done
示例
接下来将会通过两个简单并且经常的使用的例子讲解
while循环实现循环
#!/bin/bash
i=1
while [ $i -le 10 ]
do
i=`expr $i + 1`
done
echo $i
其中 l e le le表示不大于, e x p r expr expr表示是相加运算
使用while循环读取文件的某一列
源文件为
1 192.168.12.1 10
2 192.168.12.2 10
3 192.168.12.3 10
4 192.168.12.4 10
5 192.168.12.5 10
6 192.168.12.6 10
读取文件中第二列,把所有的IP地址读取出来
#!/bin/bash
while read line
do
IPs=`echo $line |awk '{print $2}'`
echo "IP is $IPs"
done < ip.txt
运行结果为
ceshi@1032:~/shell/dirfor$ sh readIP.sh
IP is 192.168.12.1
IP is 192.168.12.2
IP is 192.168.12.3
IP is 192.168.12.4
IP is 192.168.12.5
IP is 192.168.12.6
结果分析awk '{print $2}'表示取出第二列,其中awk命令在后续章节中详细介绍