您的位置:首页 > 运维架构 > Shell

shell study-13day--跳出循环(break、continue)

2020-12-27 23:03 1576 查看

1、跳出循环(break与 continue)

(1)跳出循环

在使用循环语句进行循环的过程中,有时候需要在未达到循环结束条件时强制跳出循环,Shell提供了两个命令来实现该功能:break和continue。

Break:跳出整个循环

break 概述:跳出当前整个循环或结束当前循环,在 for、while 等循环语句中,用于跳出当前所在的循环体,执行循环体之后的语句,后面如果什么也不加,表示跳出当前循环等价于 break 1,也可以在后面加数字,假设 break3 表示跳出第三层循环.


Continue:跳过本次循环,进行下次循环

continue 概述:忽略本次循环剩余的代码,直接进行下一次循环;在 for、while 等循环语句中,用于跳出当前所在的循环体,执行循环体之后的语句,如果后面加的数字是 1,表示忽略本次条件循环,如果是 2 的话,忽略下来 2 次条件的循环.

(2)实例1

[root@test shell]# cat case.sh 
#!/bin/bash
for ((i=0;i<=4;i++)) ; do
  echo $i
  case $i in
  1)
    echo "This is one"
    ;;
  2)
    continue  #跳出本次循环 
    echo "This is two"
    ;;
  3)
    break  #跳出整个循环
    echo "This is three"
    ;;
  4)
    echo "This is four"
    ;;
  esac
done
[root@test shell]# sh case.sh 
0
1
This is one
2
3
[root@test shell]#

(3)使用交互式方法批量添加用户

[root@test shell]# vi useradd.sh
#!/bin/bash
echo "*********************"
read -p "请输入要创建的用户名:" name
read -p "请输入要创建的用户数:" num
read -p "请输入要创建用户密码:" pas
echo "*********************"
for ((i=1;i<=$num;i=i+1))
do
useradd $name$i &> /dev/null
echo "$pas" | passwd --stdin $name$i &> /dev/null
done
echo "创建用户完成,结果是..."
tail -$num /etc/passwd
[root@test shell]# sh useradd.sh 
*********************
请输入要创建的用户名:test
请输入要创建的用户数:1
请输入要创建用户密码:123456
*********************
创建用户完成,结果是...
test1:x:504:504::/home/test1:/bin/bash
[root@test shell]#

个人公众号:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: