shell从入门到精通之while循环和until循环

1.语法格式
while 条件语句 --------条件满足就执行下面的指令

   while 条件
   do
       指令
   done

until 条件语句

   untile条件     ---------条件满足就跳出指令
   do
       指令
   done

2.事例

计算apache一天的日志所有行访问日志的大小。

方法1:
#!/bin/bash

#author=wanglei 2020-08-05 
#[email protected]

sum=0
while read line                  #将文件中逐行读入,并赋值给line
do
    size=`echo $line| awk '{print $10}'`  #抓取出访问日志大小
    [ "$size" == "-" ] && continue       
    ((sum=sum+$size))

done<access_log.log

[ -n "$sum" ] && echo "$sum"

------------------------------------------------------------
方法2:
#!/bin/bash

##author=wanglei 2020-08-05
## [email protected]

exec <access_log.log                 #用exec可以将文件倒入

sum=0
while read line
do

      size=`echo $line|awk '{print $10}'`
      [ "$size" == "-" ] && continue
      ((sum=sum+$size))
done

[ -n "$sum" ] && echo $sum

猜你喜欢

转载自blog.csdn.net/weixin_38753143/article/details/107807473