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]#
个人公众号: