Bash編程-第2部分

第二部分 這個 迷你教程 在編程 巴什,我們在哪裡學習使用 週期 和其他有助於我們改善功能的工具 腳本.

如果有條件

If的功能是應用過濾器,並對所應用的每種類型的過濾器執行操作或任務。 其結構如下:

如果[條件]; 然後是elif命令[condition]; 然後是其他命令; fi命令

在For循環旁邊的相應部分中顯示了一個示例。

週期數

1. While:只要條件為真,它將執行do和done之間指定的所有命令。 如果要向其傳遞比較運算符,則表達式必須放在方括號中。

當條件/命令執行命令時

示例:數字乘法表

#!/ bin / bash X = 1 echo“輸入數字並按ENTER”讀取M#循環控制X小於或等於10,而[$ X –le 10]則執行#在R中,我們存儲X by MR = $ [X * M]#此乘積被打印在屏幕上回顯“ $ M * $ X = $ R”#通過let,我們將X的值增加1個單位,讓X = $ X + 1完成

2. For:將元素列表存儲在變量中,該變量將用於在每個循環中執行某些操作。

對於ELEMENTS中的VARIABLE,請執行命令

示例:將文件從一個文件夾複製到另一個文件夾,替換舊文件的程序。

#/ bin / bash#我們建立源目錄和目標目錄ORIGIN = / home / user / Downloads DESTINATION = / home / user / Documents#我們將自己放置在源cd $ ORIGIN#所有文件中,我們只想要一個是#在* do ARCH-DESTINATION =“ $ DESTINATION / $ FILE”中為FILE調用FILE#-f過濾我們的常規文件,因為目錄對我們沒有好處。 –如果[-f $ FILE] && [$ FILE -nt $ ARCH-DESTINATION],則-Nt過濾出#個比目標文件夾中的文件“新”的文件; 然後回顯“正在復制$ FILE ...”#我們用cp複製文件cp $ FILE $ ARCH-DESTINATION fi完成#我們cd退出源文件夾cd

另一個示例:腳本,用戶必須猜測計算機生成的隨機數。

#/ bin / bash#從1到10生成一個隨機數,它以#的形式保存在RANDOM RANDOM = $ [$ RANDOM%10 + 1]中,而[1]執行echo –n“輸入數字:”讀取NUM#比較用戶選擇的數字是否等於RANDOM; 如果[[$ NUM –eq“ $ RANDOM”],請記住使用$來評估變量的#value而不是變量名; 然後迴聲“你說對了!” #break允許在中斷時結束循環。#如果數字小於RANDOM elif [“ $ NUM –gt“ $ RANDOM”]; 然後回顯“它是更少的”“否則,它大於RANDOM否則回顯”它是“更大的”

3. 直到:在結構上與While非常相似,除了代碼始終在條件的評估為否時執行,即程序繼續執行“直到條件發生”。

直到CONDITION / COMMAND做完命令

示例:按降序打印數字10-20

#!/ bin / bash CONT = 20#只要計數器小於10(-lt,“低於#than”),代碼就會執行到[$ CONT -lt 10]; 做回顯“ COUNTER $ CONT” #A CONT減去一個單位,讓CONT- = 1完成

4. 選擇:這最後一個週期是一個特例,因為它通常用於快速創建菜單。 它的工作類似於For循環。

在已完成的命令列表中選擇VARIABLE

示例:使用戶能夠繼續或結束腳本。

#!/ bin / bash #item是一個變量,它響應#user選擇的內容,Continue和Finish是可供他使用的#options,儘管可以添加其他選項#Continue Finish中的更多選擇項do#如果用戶選擇結束程序,然後中斷我們退出循環。 如果[$ item =“ Finish”]; 然後打破fi完成
謝謝Juan Carlos Ortiz!

在 Google 中將其新增為首選來源