Shell-循环控制-for、while

1、for

1.1、语法格式

for 条件
do
  执行语句
done

for语句,循环的数量有列表中元素个数来决定

1.2、示例

cat << 'CAT_END' >for.sh
#!/bin/bash
for i in $(ls /root)
do
  echo "${i}"
done
CAT_END

# 一条命令执行
for file_name in $(ls /root); do echo $file_name; done

2、while

2.1、语法格式

while 条件
do
  执行语句
done

特点:while语句,只有条件不满足的时候,才会终止循环

2.2、示例

cat << 'CAT_END' >while.sh
#!/bin/bash
a=1
while [ $a -lt 10 ]
do
  echo ${a}
  let a=a+1
done
CAT_END

3、until

3.1、语法格式

until 条件
do
  执行语句
done

特点:until语句,只有条件满足的时候,才会终止循环

3.2、示例

cat << 'CAT_END' >util.sh
#!/bin/bash
a=1
until [ $a -eq 10 ]
do
  echo ${a}
  let a=a+1
done
CAT_END

4、循环退出-break、continue

4.1、基础知识

4.1.1、需求

我们在进行循环控制的时候,有时候,需要根据实际情况,终止循环或者跳过当前循环,这就用到了循环退出的基本功能。

4.1.2、基本语法

break    # 条件满足的时候,终止执行后面的所有循环
continue # 条件满足的时候,跳过当前的循环,进入到下一个循环

4.2、示例

4.2.1、break

cat << 'CAT_END' >break.sh
#!/bin/bash
a=1
while [ $a -lt 10 ]
do
  if [ $a -eq 5 ];then
    echo '$a==5 break'
    break;
  fi
  echo "${a}"
  let a=a+1
done
CAT_END

4.2.2、continue 

cat << 'CAT_END' >continue.sh
#!/bin/bash
a=1
while [ $a -lt 10 ]
do
  let a=a+1
  if [ $a == 5 ];then
    echo '$a==5 执行下一个循环'
    continue
  fi
  echo "${a}"
done
CAT_END

 

posted @ 2023-05-24 16:48  小粉优化大师  阅读(21)  评论(0)    收藏  举报