日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
講解一下Bash中的for循環(huán)

循環(huán)是編程語言的基本概念之一。當(dāng)你想要一遍又一遍地運行一系列命令直到達到某個條件后終止退出時,循環(huán)很方便。

為張北等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計制作服務(wù),及張北網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為成都網(wǎng)站設(shè)計、成都網(wǎng)站建設(shè)、張北網(wǎng)站設(shè)計,以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達到每一位用戶的要求,就會得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!

在諸如 Bash 之類的腳本語言中,循環(huán)對于自動執(zhí)行重復(fù)性任務(wù)非常有用。在 Bash 腳本中有3個基本的循環(huán)結(jié)構(gòu),for 循環(huán), while 循環(huán),until 循環(huán)。

標(biāo)準(zhǔn) Bash for 循環(huán)

for 循環(huán)遍歷項列表并執(zhí)行給定的命令集。

Bash for 循環(huán)采用以下形式:

for item in [LIST]
do
 [COMMANDS]
done

列表可以是由空格分隔的一系列字符串,一系列數(shù)字,命令輸出,數(shù)組等。

循環(huán)遍歷字符串

在下面的示例中,循環(huán)將遍歷字符串列表中的每個項目,使用變量 element 代表當(dāng)前項目。

for element in Hydrogen Helium Lithium Beryllium
do
 echo "Element: $element"
done

循環(huán)將產(chǎn)生以下輸出:

Element: Hydrogen
Element: Helium
Element: Lithium
Element: Beryllium

循環(huán)遍歷數(shù)字范圍

您可以使用序列表達式通過定義范圍的起點和終點來指定數(shù)字或字符的范圍。序列表達式采用以下形式:

{START..END}

在下面的示例中,循環(huán)將遍歷從 0 到 3 的所有數(shù)字。

for i in {0..3}
do
 echo "Number: $i"
done
Number: 0
Number: 1
Number: 2
Number: 3

從 Bash 4 開始,還可以在使用范圍時指定增量。表達式采用以下形式:

{START..END..INCREMENT}
for i in {0..20..5}
do
 echo "Number: $i"
done
Number: 0
Number: 5
Number: 10
Number: 15
Number: 20

循環(huán)數(shù)組元素

您還可以使用 for 循環(huán)迭代元素數(shù)組:

在下面的示例中,我們定義一個數(shù)組 BOOKS 并迭代數(shù)組的每個元素。

BOOKS=('In Search of Lost Time' 'Don Quixote' 'Ulysses' 'The Great Gatsby')

for book in "${BOOKS[@]}"; do
 echo "Book: $book"
done
Book: In Search of Lost Time
Book: Don Quixote
Book: Ulysses
Book: The Great Gatsby

C 風(fēng)格的 Bash for 循環(huán)

C-style for 循環(huán)的語法采用以下形式:

for ((INITIALIZATION; TEST; STEP))
do
 [COMMANDS]
done

INITIALIZATION 部分僅在循環(huán)開始時執(zhí)行一次。然后,評估 TEST 部分。如果為假,則 for 循環(huán)終止。如果 TEST 為真,則執(zhí)行 for 循環(huán)體內(nèi)的命令并更新 STEP 部分。

在下面的代碼中,循環(huán)通過初始化星型 i = 0 ,然后在每次迭代之前檢查是否 i ≤ 10 。如果為 true ,則打印當(dāng)前值 i 并將變量遞增 i 1 (i++) ,否則循環(huán)終止。

for ((i = 0 ; i do
 echo "Counter: $i"
done

循環(huán)迭代 1001 次并將產(chǎn)生以下輸出:

Counter: 0
Counter: 1
Counter: 2
...
Counter: 998
Counter: 999
Counter: 1000

break 和 continue

break 和 continue 語句可用于控制 for 循環(huán)執(zhí)行。

break 語句

break 語句終止當(dāng)前循環(huán)并將程序控制傳遞給終止語句后面的語句。它通常用于在滿足某個條件時終止循環(huán)。

在下面的示例中,一旦當(dāng)前迭代項等于 ‘Lithium’ ,循環(huán)的執(zhí)行將終止。

for element in Hydrogen Helium Lithium Beryllium; do
 if [[ "$element" == 'Lithium' ]]; then
   break
 fi
 echo "Element: $element"
done

echo 'All Done!'
Element: Hydrogen
Element: Helium
All Done!

continue 語句

continue 語句退出循環(huán)的當(dāng)前迭代,并將程序控制傳遞給循環(huán)的下一次迭代。

在下面的示例中,我們迭代一系列數(shù)字,當(dāng)當(dāng)前迭代項等于 ‘2’ 時, continue 語句將導(dǎo)致執(zhí)行返回到循環(huán)的開頭并繼續(xù)下一次迭代。

for i in {1..5}; do
 if [[ "$i" == '2' ]]; then
   continue
 fi
 echo "Number: $i"
done
Number: 1
Number: 3
Number: 4
Number: 5

For 循環(huán)示例

重命名文件名中包含空格的文件

下面的示例演示如何使用 Bash for 循環(huán)通過將空格替換為下劃線來重命名當(dāng)前目錄中的所有文件,并在其名稱中包含空格。

for file in *\ *; do
 mv "$file" "${file// /_}"
done

讓我們逐行分解代碼:

  • 第一行創(chuàng)建一個 for 循環(huán),并遍歷其名稱中帶有空格的所有文件的列表。表達式 *\ * 創(chuàng)建列表。
  • 第二行適用于列表中的每個項目,并將文件移動到新的文件,用下劃線 (
    ) 替換空格。該部分 ${file// / } 使用 shell 參數(shù)擴展來用字符串替換參數(shù)中的模式。
  • done 表示循環(huán)段的結(jié)束。

更改文件擴展名

以下示例顯示如何使用 Bash for 循環(huán)通過將文件擴展名從 .jpeg 替換為 .jpg 來重命名當(dāng)前目錄中以 .jpeg 結(jié)尾的所有文件。

for file in *.jpeg; do
   mv -- "$file" "${file%.jpeg}.jpg"
done

讓我們逐行分析代碼:

  • 第一行創(chuàng)建一個 for 循環(huán),并遍歷一個包含 .jpeg 結(jié)尾的所有文件的列表。
  • 第二行適用于列表中的每個項目,并將文件移動到一個用 .jpg 替換 .jpeg 的新文件。該部分 ${file%.jpeg }使用 shell 參數(shù)擴展從文件名中刪除 .jpeg 部分。
  • done 表示循環(huán)段的結(jié)束。

新聞名稱:講解一下Bash中的for循環(huán)
標(biāo)題路徑:http://www.5511xx.com/article/dhipdsp.html