shell的执行流控制

74 篇文章 0 订阅
26 篇文章 0 订阅

for循环
格式
for 定义变量
do 使用变量执行动作
done 结束
例1
vim for.sh
在这里插入图片描述
sh for.sh
在这里插入图片描述
例2
vim for.sh
在这里插入图片描述
sh for.sh,每间隔2循环一次
在这里插入图片描述

例3
在这里插入图片描述
sh for.sh
在这里插入图片描述
例4
在这里插入图片描述
sh for.sh
在这里插入图片描述例5
在这里插入图片描述
sh for.sh
在这里插入图片描述
脚本练习1
编写脚本查看ip地址1-10是否通畅,并显示ip
vim ip_check.sh
在这里插入图片描述
sh ip_check.sh
在这里插入图片描述
脚本练习2
编写脚本,实现1:40s 倒计时
vim time.sh
在这里插入图片描述
sh time.sh
在这里插入图片描述
while
while true 条件为真
do 条件成立所作循环动作
done 结束
例如
vim while.sh
在这里插入图片描述
测试
在这里插入图片描述
until
until false 条件为假
do 执行动作
done 结束
例如
vim until.sh
在这里插入图片描述
运行
在这里插入图片描述
if
常用于判断
格式
if xxxxx 如果xxxxx成立
then 那么作以下动作
elif xxxxx 又如果 xxxxx成立
then 那么作以下动作
else 如果以上条件都不成立,那么作以下动作
例如
在这里插入图片描述测试
在这里插入图片描述脚本练习
sh file.sh file 可以识别file文件的类别
vim file.sh
在这里插入图片描述

在这里插入图片描述
测试
在这里插入图片描述case
一般用于按钮选择类
格式
case $x in
1)如果选择“1”,执行以下
;; 分隔符
2) 如果选择“2”,执行以下
;;
*) 如果12 都不选,执行以下
esac 结束
例如
vim case.sh
在这里插入图片描述
sh -x case.sh,可以发现在选在b和c的时候都没有经过a,三个选项完全同级,不需要经过一系列操作,节省资源
在这里插入图片描述

脚本练习
sh system_watch.sh 当后边为disk 监控磁盘使用情况
当为memory,监控内存使用情况
当为upload,监控负载
vim system_watch.sh
在这里插入图片描述
expect
应答脚本
安装expect
在这里插入图片描述
编写问题脚本
vim read.sh
在这里插入图片描述
回答脚本
vim read.exp
在这里插入图片描述

expect read.exp 问题答案
在这里插入图片描述
注释掉一个问题测试
在这里插入图片描述
没有回答
在这里插入图片描述
脚本练习
sh auto_ssh.sh IP
假设密码为westos 运行脚本可以连接这个IP,如果网络不通报错
vim auto_ssh.sh
在这里插入图片描述
测试
在这里插入图片描述
continue
终止当前此次循环提前进入下个循环
例如
在这里插入图片描述

没有循环3,跳过后其他循环正常,语句外正常
在这里插入图片描述

break
终止当前语句中的所有动作进行语句外的其他动作
例如
在这里插入图片描述
运行,循环到3时根据设置停止循环,进行语句外的其他动作
在这里插入图片描述

exit
终止所有,退出脚本
例如
在这里插入图片描述
循环到3,直接退出脚本
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值