循環(huán)語句
成都創(chuàng)新互聯(lián)是一家專業(yè)提供鶴山企業(yè)網(wǎng)站建設,專注與網(wǎng)站設計制作、成都網(wǎng)站制作、H5開發(fā)、小程序制作等業(yè)務。10年已為鶴山眾多企業(yè)、政府機構等服務。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站建設公司優(yōu)惠進行中。
for循環(huán)語句
需要指定一個變量以及可以取值的取值列表,針對每一個不同的取值執(zhí)行相同的命令序列,直到變量值用盡,退出循環(huán)
取值列表:for語句的執(zhí)行條件,其中包括多個屬性相同的對象,需要預先指定。
格式:
for 變量名 in 取值列表
do
命令序列
done
注:
for語句的操作對象為用戶指定名稱的變量
通過in關鍵字為該變量預先設置一個取值列表
多個取值之間以空格作為分隔
do~done之間是一個循環(huán)體
應用領域:
1、字符串取值列表
#!/bin/bash
#字符串取值列表
for A in 電腦 汽車 手機 書包
do
echo "我要買$A"
done
我在 根目錄下的 /opt目錄下創(chuàng)建一個的shell腳本名為for01.sh(如下圖)
在vi便一種創(chuàng)建腳本
A表示自定義變量名
電腦汽車書包表示待取值
$A表示依次取得值
保存退出
chmod +x for01.sh 為腳本添加執(zhí)行權限
2、文件取值列表
#!/bin/bash
#文件取值列表(命令執(zhí)行取值列表)
i=1
for USER in $(cat /opt/a)
do
echo "$i號用戶:$USER"
let i++
done
先在 /opt目錄下創(chuàng)建個a文件寫入一些名字
再創(chuàng)建for02.sh文件寫入下圖內容
$(cat /opt/a)表示要從這個目錄中取值
保存退出為文件添加執(zhí)行權限
效果如下圖
3、掃描ip地址
#!/bin/bash
#掃描ip地址
for IP in 192.168.108.{1..254} //網(wǎng)段
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
創(chuàng)建for03目錄
如下圖
這里面的192.168.0.是自己的網(wǎng)段
加入執(zhí)行權限后結果如下圖
4、批量添加用戶
方法一:同一個姓的
#!/bin/bash
#批量添加用戶
for A in teacher{1..5} //添加五個用戶
do
useradd $A
echo 123 | passwd --stdin $A &> /dev/null
#echo 123 是為用戶設置密碼
done
創(chuàng)建for04
添加執(zhí)行權限并運行如下圖
再cat /etc/passwd會顯示用戶
方法二:不同姓名
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
創(chuàng)建for05如下圖
為文件添加執(zhí)行權限并運行
完成后在cat /etc/passwd中查看