for迴圈語句

2021-10-05 03:47:24 字數 2193 閱讀 6726

在實際工作環境中,經常會遇到某項任務需要多次執行的情況,而每次執行時僅僅是處理的物件不一樣,其他命令完全相同。如:根據伺服器清單檢查各個主機的存活狀態;根據ip位址黑名單設定拒絕訪問的防火牆策略等。

這樣繁瑣的重複任務時,if語句已經不能滿足需求。則我們需要for迴圈語句。

使用for迴圈時,需要指定乙個變數及可能的取值列表,針對每乙個不同的取值重複執行相同的命令序列,直到變數值用完退出迴圈。在這裡,「取值列表」稱為for語句的執行條件,其中包括多個屬性相同的物件,需要預先指定(如上面提到的ip黑名單)。

for 變數名 in 取值列表

do命令序列

done

for語句的操作物件為使用者指定的變數,並通過in關鍵字為該變數預先設定了乙個取值列表,多個取值之間以空格進行分隔。位於do。。。。。done之間的命令序列稱為「迴圈體」,其中的執行語句需要引用變數以完成相對的任務。

for語句的執行流程:首先將列表中的第乙個取值賦予給變數,並執行do。。。。done迴圈體中的命令序列。然後將列表中的第二個取值賦值給變數,並執行迴圈體中的命令序列。。。。。。依次類推,直到列表中的所有取值用完,然後將跳至done語句,表示迴圈結束。

事例1:

根據姓名列表批量新增使用者:根據員工列表,在linux伺服器中新增相應的使用者賬號。初始密碼為123456.

#vi adduser.sh

#!/bin/bash

ulist=$(cat /root/users.txt)

for uname in $ulist

douseradd $uname

echo 「123456」 | passwd --stdin katex parse error: expected 'eof', got '&' at position 7: uname &̲>/dev/null don…(cat /root/iplist.txt)

for ip in $hlist

doping -c 3 $ip &> /dev/null

if [ $? -eq 0 ]

then

echo 「host $ip is up」

else

echo 「host $ip is down」

fidone

指令碼中的iplist是ip位址檔案。

事例3:批量新增使用者

#!/bin/bash

#本指令碼用來批量建立系統使用者

echo 『成功建立使用者:』 > /root/user_name

read -ep 『請輸入要建立的使用者數量:』 num

for i inseq 1 $num

dogrep(篩選)" user-$i" /etc/passwd > /dev/null 2>&1

if [ ?−n

e0];

then

user

addu

ser−

? -ne 0 ]; then useradd user-

?−ne0]

;the

nuse

radd

user

−i > /dev/null 2>&1

if [ ?−e

q0];

then

echo

"use

r−

? -eq 0 ]; then echo "user-

?−eq0]

;the

nech

o"us

er−i" >> /root/user_name

echo "user-i"∣

pass

wdus

er

−i"| passwd user-

i"∣pas

swdu

ser−

i --stdin > /dev/null 2>&1

echo 「user-i建立

成功!"

fiel

seec

ho"u

ser−

i 建立成功!" fi else echo "user-

i建立成功!

"fie

lsee

cho"

user

−i 使用者已存在,建立失敗!」

fidone

cat /root/user_name

迴圈語句python Python 迴圈語句

sonnetoab勝於藍 優秀個人部落格 gra nnet qq.comoab勝於藍 優秀個人部落格oab勝於藍 優秀個人部落格 八皇后問題 迴圈遞迴法 oab勝於藍 優秀個人部落格 queen problem with recurison board size 8 def under attack...

迴圈for語句 if語句

if語句 if 表示式 else if 表示式 for迴圈 for var i 0 i 10 i if語句 if 表示式 else if 表示式 for迴圈 for var i 0 i 10 i while迴圈 while 表示式 使用場景 for 次數確定的時候使用 while 直到滿足摸個條件的...

for迴圈語句

迴圈語句 for迴圈,while迴圈,do.while迴圈。for迴圈格式 for 初始化語句 判斷條件語句 控制條件語句 執行流程 a 執行初始化語句 b 執行判斷條件語句,看其返回值是true還是false 如果是true,就繼續執行 如果是false,就結束迴圈 c 執行迴圈體語句 d 執行控...