温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

shell脚本--------for循环

发布时间:2020-06-26 12:57:53 来源:网络 阅读:411 作者:pq一一 栏目:云计算

循环语句

for循环语句
需要指定一个变量以及可以取值的取值列表,针对每一个不同的取值执行相同的命令序列,直到变量值用尽,退出循环

取值列表:for语句的执行条件,其中包括多个属性相同的对象,需要预先指定。

格式: for 变量名 in 取值列表 do 命令序列 done

注:
for语句的操作对象为用户指定名称的变量
通过in关键字为该变量预先设置一个取值列表

多个取值之间以空格作为分隔
do~done之间是一个循环体

应用领域:
1、字符串取值列表
#!/bin/bash
#字符串取值列表

for A in 电脑 汽车 手机 书包 do echo "我要买$A" done

我在 根目录下的 /opt目录下创建一个的shell脚本名为for01.sh(如下图)
shell脚本--------for循环
在vi便一种创建脚本
shell脚本--------for循环
A表示自定义变量名
电脑汽车书包表示待取值
$A表示依次取得值
保存退出

chmod +x for01.sh 为脚本添加执行权限

shell脚本--------for循环

2、文件取值列表
#!/bin/bash
#文件取值列表(命令执行取值列表)

i=1 for USER in $(cat /opt/a) do echo "$i号用户:$USER" let i++ done

先在 /opt目录下创建个a文件写入一些名字
再创建for02.sh文件写入下图内容
shell脚本--------for循环
$(cat /opt/a)表示要从这个目录中取值
保存退出为文件添加执行权限
效果如下图
shell脚本--------for循环

3、扫描ip地址

#!/bin/bash #扫描ip地址 for IP in 192.168.108.{1..254} //网段 do ping -c 3 -i 0.2 -W 1 $IP &> /dev/null if [ $? -eq 0 ];then echo "$IP is up!!!" else echo "$IP is down!!!" fi done

创建for03目录
如下图
shell脚本--------for循环
这里面的192.168.0.是自己的网段
加入执行权限后结果如下图
shell脚本--------for循环

4、批量添加用户
方法一:同一个姓的

#!/bin/bash #批量添加用户 for A in teacher{1..5} //添加五个用户 do useradd $A echo 123 | passwd --stdin $A &> /dev/null #echo 123 是为用户设置密码 done

创建for04
shell脚本--------for循环
添加执行权限并运行如下图
shell脚本--------for循环

再cat /etc/passwd会显示用户
shell脚本--------for循环

方法二:不同姓名

 vi b.txt a b c d e #!/bin/bash #批量添加用户 for A in $(cat /opt/b) do useradd $A echo 123 | passwd --stdin $A &> /dev/null done

创建for05如下图
shell脚本--------for循环
为文件添加执行权限并运行
shell脚本--------for循环
完成后在cat /etc/passwd中查看
shell脚本--------for循环

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI