Shell脚本应用(三)

Shell脚本应用

技能展示:
学会使用for.while循环语句
学会使用case分支语句

简介
除了上一章学习的if条件语句之外,作为一种脚本编程语言,Shell同样包含循环,分支等
其他程序控制结构,从而能够轻松完成更加复杂,强大的功能。
本次将学习for.while.case语言的具体应用。

重 点
for.while循环语句
case分支语句

理论讲解
使用for循环语句
在实际工作中,经常会遇到某项任务需要多次执行的情况,而每次执行时仅仅是处理的对
象不一样,其他命令相同。例如,根据通讯录中的姓名列表创建系统账号,根据服务器清单
检查各主机的存活状态,根据IP地址黑名单设置拒绝访问的防火墙策略等。
当面对各种列表重复任务时,使用简单的if语句已经难以满足要求,而顺序编写全部代码更是显得异常烦琐,困难重重。本次将要学习的for循环语句,可以很好地解决类似问题。
1.for语句的结构
使用for循环语句时,需要指定一个变量及可能的取值列表,针对每个不同的取值重复执行
相同的命令序列,直到变量值用完退出循环。在这里."取值列表"称为for语句的执行条件,其
中包括多个属性相同的对象,需要预先指定(如通讯录.IP黑名单)。
for循环语句的语法结构如下所示。
在这里插入图片描述
上述语句结构中,for语句的操作对象为用户指定名称的变量,并通过in关键字为该变量预
先设置一个取值列表,多个取值之间以空格进行分隔。位于do~done之间的命令序列称为循
环体,其中的执行语句需要引用变量以完成相应的任务。
for语句的执行流程;首先将列表中的第一个取值赋给变量,并执行do~done循环体中的命令
序列;然后将列表中的第二个取值赋给变量,并执行循环体中的命令序列~~依次类推,直到列表中的所有取值用完,最后将跳至done语句,表示结束循环,如下图。
在这里插入图片描述
操作
一.for循环
1.for循环语法结构
for 变量名 in 取值列表
do
命令序列
done
2.使用for循环
1)创建取值列表
[root@Centos ~]# vim username.txt
在这里插入图片描述
2)编写for循环脚本
[root@Centos ~]# vim useradd.sh
[root@Centos ~]# cat useradd.sh
在这里插入图片描述3)删除指定用户
[root@Centos ~]# vim deluser.sh
[root@Centos ~]# cat deluser.sh
在这里插入图片描述
3.使用for循环测试网络连接性
[root@Centos ~]# vim ./pinghost.sh
[root@Centos ~]# cat ./pinghost.sh
在这里插入图片描述
在这里插入图片描述
二.while循环
1.while循环语法结构
while [ 条件 ]
do
命令序列
done
2.创建用户名以stu开头数字随机
[root@Centos ~]# vim whileadduser.sh
在这里插入图片描述
3.删除用户
[root@Centos ~]# vim whiledeluser.sh
[root@Centos ~]# cat whiledeluser.sh
在这里插入图片描述
三.$case服务控制
在这里插入图片描述
在这里插入图片描述

1.case语法结构
case 变量值 in
模式1)
;;
模式2)
;;
*)
默认命令序列
esac
2.编写控制vsftpd脚本
[root@Centos ~]# vim vsftpd.sh
[root@Centos ~]# cat whiledeluser.sh
[root@Centos ~]# chmod +x vsftpd.sh
在这里插入图片描述
在这里插入图片描述
3.for.while.case的区别
1)for
根据列表内容进行循环遍历数据使用
2)while
根据初始化随机循环使用
3)case
写服务控制脚本使用

实验
在这里插入图片描述
按照实验要求创建脚本getarp
在这里插入图片描述

验证脚本
在这里插入图片描述

在做脚本scanhost
在这里插入图片描述
测试脚本:
在这里插入图片描述
操作完成,感谢观看。拜拜

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值