专题 (三) 循环遍历

1、for

(1) for 循环 使用 (())

local _data_size=${#database_pool[@]}
for ((j=1;j<=_data_size;j++)){ 
  _map_str=${database_pool[$j]}
  echo $_map_str
}

使用方法和java的语法有些类似

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) 遍历某个目录下的所有文件

第一种方法

1
2
3
for file in $dir/*;do
   echo $file   #输出的是file的绝对路径
done

第二种方法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#! /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
1
2
3
4
for LINE in `cat $file`
  do
   echo $LINE
 done

  

  

 
 
 
posted @   夏之夜  阅读(27)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示