专题 (三) 循环遍历

1、for

2、while

(1)  循环是一个条件

num=1

while [ $num -le 10  ]
do
        SUM=`expr $num \* $num`
        echo $SUM
        num=`expr $num + 1`
done

(2)  循环条件是一个固定值

num=1

while true
do
   if [ $i -ge 3 ];then
       break;
   fi
   let num++
done

3、实战

(1) 遍历某个目录下的所有文件

第一种方法

for file in $dir/*;do
   echo $file
done

第二种方法

#! /bin/bash

function read_dir(){
for file in `ls $1` #注意此处这是两个反引号,表示运行系统命令
do
 if [ -d $1"/"$file ] #注意此处之间一定要加上空格,否则会报错
 then
 read_dir $1"/"$file
 else
 echo $1"/"$file #在此处处理文件即可
 fi
done
}
#读取第一个参数
read_dir $1

(2) 遍历文件中的每行

while read line;do
 #过滤注释
  if [ `grep -e '^\s*#' $line |wc -l` -ne 0 ];then
    continue
  fi
  echo $line
  let i++
done < $service_status_conf
 for LINE in `cat $file`
   do
	echo $LINE 
  done

  

  

 
 
 
posted @ 2022-10-25 19:27  夏之夜  阅读(21)  评论(0编辑  收藏  举报