1. 程式人生 > >shell for 循環簡單用法

shell for 循環簡單用法

line ech 事先 就是 其他 info 一個 png sum

for循環:固定有限次數循環,工作中for使用最多。

語法1:

for 變量名 in 變量取值列表

do

指令…

done

學習方法:記住下面的內容

for 男人 in 世界

do

if [ 有房 ] && [ 有車 ] && [ 有錢 ] && [ 有權 ] && [ … ];then

echo “我喜歡”

else

rm –f 男人

done

下面列舉幾個for循環語句例子:

直接列出變量列表所有元素,打印1、2、3、4、5

[[email protected] scripts]# vim for.sh
#!/bin/sh
for n in 1 2 3 4 5 
do
   echo $n
done

技術分享圖片

語法2:

for ((初始值;循環控制條件;變量變化))

do

指令

done

在語法二中需要註意以下幾點:

①初始值:在循環開始時,需要給某個變量賦予初始值,如 i=1。

②循環控制條件:用於指定變量循環的次數,如 i<=100,則只要 i 的值小於等於 100,循環就會繼續。

③變量變化:每次循環之後,變量該如何變化,如 i=i+1,代表每次循環之後,變量的值都加 1。

語法二和其他語言中的 for 循環類似,也就是事先決定循環次數的固定循環。先舉一個簡單的例子。

從1加到100總和:

[[email protected] scripts]# vim for.sh
#!/bin/sh
#no.1 echo "-----------------------------" for n in `seq 100` do ((sum+=n)) done echo "1...100總和為:" $sum echo "==============================" #no.2 for ((i=1;i
<=100;i++)) do ((sum1+=i)) done echo "1...100總和為:" $sum echo "==============================" #no.3 echo "1...100總和為:" $((100*(100+1)/2)) echo "-------------------------------"

技術分享圖片

下面我們來一個實戰例子:

掃描192.168.43.110---120 /24網絡裏,當前在線用戶的ip有哪些:

[[email protected] scripts]# vim scan.sh

#!/bin/sh
# ******************************************************
# Author       : aゞ錦衣衛 
# Last modified: 2019-05-14 23:37
# Email        : [email protected]
# blog         : https://www.cnblogs.com/su-root
# Filename     : scan.sh
# Description  : Scanning online IP
# ******************************************************
read -p "請輸入您要掃描的IP網段:" IP
echo "正在掃描..."
sleep 1
for i in {110..120}
do
        if ping -c 1 -W 1 $IP.$i &>/dev/null;then
        echo -e "\033[32m $IP.$i\033[0m is up"
else
        echo -e "\033[31m $IP.$i\033[0m is down"
fi
done
echo "掃描完畢!"

技術分享圖片

ok!

shell for 循環簡單用法