Shell脚本---while循环,case语句

Shell脚本—while循环,case语句

  • while循环结构

    		----------------条件不成立------->
    		↑				↓			    ↓
    while条件测试操作  	条件成立	          ------>done结束循环
    		↑				↓
    		<----------do命令序列	
    
  • while语句语法

    while [ 条件表达式 ]

    do

    ​ 命令序列

    done

  • for语句和while语句的区别

​ for后面跟上的是一个取值列表,可以是一个列表文件,也可以是多个以空格分隔开的值(如:t1 t2 t3…)
​ while后面跟上的是一个条件表达式
​ while语句执行时,根据特定的条件反复执行一个命令序列,直到条件不满足时才停止,脚本应用中,为了避免死循环,循环体内应包括修改测试条件的语句,在适当时使测试条件不成立,来停止语句。
​ while语句的执行流程,首先判断while 后的条件测试结果,如果成立,则执行do-done循环体中的命令序列,返回后再次测试判断条件测试结果,如果条件仍成立,继续执行循环体,知道测试结果不成立为止,跳转到done语句,表示结束。

两个特殊的条件测试操作:
true真条件永远成立,无限循环,除非强制终止

​ false 假循环体不会执行

case分支语句

  • case语句结构

    
    		-----------------------------------------
    		↑				 ↑						↓
    		(;;)			 ↑						↓
    		↑				 ↑						↓
    	命令序列1			  (;;)				esac结束分支
    		↑是				 ↑						↓
    --->case 变量=模式1		命令序列2			  默认命令序列
    		↓否				 ↑						↓
    		---------->变量=模式2					  ↓
    						  ↓否					↓
    						  ------------------->变量=其他值(*)
    
  • case语法结构

    case $变量名 in

    模式1)

    ​ 命令序列1

    ;;

    模式2)

    ​ 命令序列2

    ;;

    *)

    ​ 默认命令序列

    esac ##结束语

  • 格式注释

    ​ case行尾必须为单词“in”,每个模式必须以右括号“)”结束

    ​ 双分号“;;”表示命令序列结束。
    ​ 模式字符串中,可以用方括号表示一个连续的范围(例:[O-9]),还可以用竖号T"来表示"或"
    ​ 最后的“*”表示一个通配符

  • 关键词

    sleep *:睡眠*秒

    seq 起始值 步长 结束值:类似{1…100…2}

    break:退出循环语句,跳到done语句继续执行

    continue:回到循环开始位置

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值