91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何實現Shell兩種for循環

發布時間:2020-08-03 13:39:39 來源:億速云 閱讀:210 作者:小豬 欄目:開發技術

這篇文章主要為大家展示了如何實現Shell兩種for循環,內容簡而易懂,希望大家可以學習一下,學習完之后肯定會有收獲的,下面讓小編帶大家一起來看看吧。

前言:

  生產環境中的應用場景:根目錄下建立數量不等的目錄,掛載不同的硬盤,按sdb-sdn的順序對應/data2-/datan,就需要for循環嵌套來解決,寫成如for i in 1 2 3 ,for j in a b c,1a,2b,3c這樣而for循環似乎并不支持for的一一對應,寫出來執行的話,會變成第一個循環只對應第二個循環的第一個變量的這種情況,花了點時間嘗試,最終用兩種不同的方式得以實現,分別是使用第三個變量替代和使用數組為變量編號的方法,直接用實例來說明:

變量替代:

  簡單的說就是先插入一條不相干的數據,然后使用sed來進行替換。

for i in $every;do
#$erery表示系統掛載的硬盤,挨個分區,并將臟數據wwwdata1以配置文件格式寫入fstab

    parted -s /dev/$i mklabel gpt &>/dev/null || echo "${i}part01出現問題,請檢查"
    parted -s /dev/$i mkpart Primary 1 `parted /dev/$i p|grep "^Disk"|cut -d ":" -f2` &>/dev/null || echo "${i}part02出現問題,請檢查"
    mkfs -T largefile -t ext4 -b 4096 -m 2 /dev/${i}1 &>/dev/null || echo "${i}mkfs出現問題,請檢查"
    echo "/dev/${i}1 /wwwdata1 ext4 defaults 0 0" >> /etc/fstab
    echo "-${i}磁盤格式化分區完成-" && sleep 2
done
for a in $foldername;do

#$foldername表示文件夾名稱,使用sed替換wwwdata1,每次使用變量替換一次wwwdata1,即可達成目的。
sed -i 0,/wwwdata1/s//${a}/ /etc/fstab && echo "-${a}文件夾已掛載磁盤-" && sleep 1 || echo "-${a}掛載失敗-" done

數組:

  將需要對應的元素分別放入兩個數組,然后使用for循環來按元素下標進行調用。舉個簡單點的例子,大家能看懂就好了:

#!/bin/bash
file=(1 2 3)
disk=(a b c)
for i in `seq 0 2`;do
    echo "${file[i]}${disk[i]}"
done

實際上的應用呢,這兩種方法都是可以的,但顯而易見,第二種方法更科學,腳本的健壯性更好。

以上就是關于如何實現Shell兩種for循環的內容,如果你們有學習到知識或者技能,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

砀山县| 南通市| 禄丰县| 无棣县| 九江县| 丹阳市| 疏勒县| 临邑县| 四子王旗| 朔州市| 德昌县| 开化县| 汉源县| 临江市| 新建县| 正安县| 定结县| 台州市| 驻马店市| 荥经县| 谢通门县| 边坝县| 屯门区| 巴马| 金昌市| 蒙山县| 阳江市| 美姑县| 遂宁市| 阳朔县| 克什克腾旗| 台中市| 巴林左旗| 江华| 祁连县| 马关县| 宾阳县| 江油市| 项城市| 德令哈市| 东阳市|