Shell脚本循环语句及Case选择语句(for、while、case、grep命令)

本文详细介绍了Shell脚本中的for、while循环语句及其使用案例,包括如何创建用户、输出偶数、读取文件等。此外,还讲解了case选择语句的结构和应用场景,并探讨了grep命令的正则表达式使用。
摘要由CSDN通过智能技术生成

Shell脚本循环语句及Case选择语句

工作中常遇到某项任务需要多次重复执行的情况,每次任务仅仅处理对象不一样,其他命令相同。例如:根据通讯录中的信息创建用户,检查各个主机的状态,根据ip地址名单设置访问策略等。

一、使用for循环语句

For循环的运作方式,需要制定一个变 量吸取值列表(for的执行条件),将取值列表的元素一一取出,依序放入指定的变量中,然后重复执行命令区域的命令序列(在do和done之间) ,直到所有元素取尽为止。

1. 格式:

for 变量名in取值列表

do

命令序列(循环体)

done

done为for循环语句的结束语、多个取值直接用空格分割

 

实验1:创建20个用户,密码为123456

#!/bin/bash

for i in {1..20}

do

useradd user$i && echo "123456" | passwd --stdin user$i

done

实验2:输出1-100之间的偶数

#!/bin/bash

for i in {1..50}

do

b=2

echo $(expr $i \* $b)

sleep 1

done

实验3:批量创建带名字的用户(名字列表在userlist.txt中)

#!/bin/bash

#批量创建用户

for uname in $(cat userlist.txt)

do

useradd $uname

echo "123456" |passwd --stdin $uname &> /dev/null

chage -d 0 $uname #要求你第一次登录时改密码

done

2. For的另一种语法格式

这种语法跟传统语言中的for很像,如C语言。

for ((初始条件:终止条件:异动项))

do

命令区域

done

在for循环中,一开始设定初始条件,接着判断终止条件是否成立,如果尚未达到终止条件,就执行do~done之间的命令区域,接着执行改动项,复上述终止条件,直到条件成立

实验4:9x9乘法表

#!/bin/bash

for ((i=1;i<=9;i++))

do

        for ((j=1;j<=i;j++))

        do

        echo -n "$i * $j = $(expr $i \* $j)  “

        done

echo

done

 

二、使用while循环语句

 

1. 格式:

while [条件表达式]

do

<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值