成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Linux Bash Shell-小循環大用處

系統 Linux
循環是一門與生俱來的藝術,它可以使你的工作更簡單,并幫助你相對輕松地自動化重復性任務。

當你可以讓 for 循環為你執行相同的代碼時,為什么還要在你的 shell 腳本中一次又一次地運行相同的代碼呢?

循環是一門與生俱來的藝術,它可以使你的工作更簡單,并幫助你相對輕松地自動化重復性任務。

想象一種情況,你需要更新一系列數字或文本,不要手動執行,而是讓系統為你執行。這就是循環的力量以及它為你帶來的好處。

循環作為一種函數,幾乎在所有編程語言中都可用。Linux 的 Bash 也不例外。

這篇是一個指南文章,解釋了如何在 shell 腳本中使用 for 循環。

for 循環結構

在 shell 腳本中使用 for 循環相當簡單,你可以操縱結構來實現不同的目標。

基本結構如下:

for item in [LIST]
do
[COMMANDS]
done

使用循環,你可以根據時間的需要在數字和字符值之間循環。

這是 shell 腳本中 for 循環的結構:

for VARIABLE in 1 2 3 4 5 .. N
do
command1
command2
commandN
done

你可以在第一行定義迭代次數。這樣,你將提及起始值和結束值。

迭代次數由你指定的值確定,而do語句后面的代碼是生成的循環值。

在 Linux Bash 中創建和運行 for 循環

打開 Linux 終端開始編寫代碼。

文本編輯器用于存儲 shell 腳本,該腳本在執行時打印所需的結果。出于說明目的,本指南中的命令是在nano文本編輯器中編寫的。

在終端命令行中輸入nano以打開文本編輯器,然后輸入 shell 腳本名稱。

linuxmi@linuxmi:~/www.linuxmi.com$ nano LinuxMi.com.sh

你可以將 shell 腳本的名稱更改為你喜歡的任何名稱。擴展名為sh,因為你將存儲一個 shell 腳本。

使用 for 循環打印整數

在本節中,以下代碼將演示如何以不同方式打印整數值。要在 shell 腳本中使用 for 循環來打印整數,你可以嘗試其中一些代碼示例。

1.循環代碼打印一組數字

編輯器打開后,就該編寫代碼了。

#!/usr/bin/bash
for i in 1 2 3
do
echo "Current # $i"
done

輸出:

說明:

  • i = 存儲迭代值的變量名
  • 1 2 3 = shell 腳本中 for 循環的迭代次數
  • do = 執行一組特定動作的命令
  • echo = 打印旁邊定義的結果
  • done = 循環結束

按Ctrl + X將代碼保存在文本編輯器中。保存并退出腳本。

在執行代碼之前,你必須更改 shell 腳本的權限。

輸入chmod +x后跟你的 shell 腳本文件名:

linuxmi@linuxmi:~/www.linuxmi.com$ chmod +x LinuxMi.com.sh

授予權限后,通過鍵入以下內容在 shell 腳本中運行 for 循環:

linuxmi@linuxmi:~/www.linuxmi.com$ ./LinuxMi.com.sh

輸出將打印在終端窗口中。

2. 打印一組數字的替代方法

在 shell 腳本中定義 for 循環還有其他方法。你還可以使用大括號指定循環迭代的開始值和結束值。

下面是代碼結構:

for i in {1..3} # for循環定義了一個變量,以及要通過一個循環進行多少次迭代
do
echo "當前值 # $i: 示例 2"
done

循環將運行 3 次,值將按以下方式打印:

3. 使用步長值的循環代碼

如果你想在迭代中不連續地移動,你可以在循環中定義步長值。根據指定的值,輸出將有一個固定的間隙。

例如:

for i in {1..10..2}
do
echo "Number = $i"
done

說明:

  • i = 存儲迭代的變量
  • 1..10 = 運行循環的迭代次數
  • 2 = 階躍值
  • do = 命令打印輸出
  • echo = 打印命令
  • done = 循環的退出命令

輸出:

輸出相差 2,這是在 step 語句中指定的。

使用 for 循環打印字符值

shell 腳本中的 for 循環不僅限于整數。在 Bash 中,你可以使用 for 循環來有效地遍歷字符和字符串值。

1. 遍歷字符串

這是一個基本示例,說明如何遍歷一些字符串值(在 for 語句中定義):

for name in LinuxMi linuxmi.com www.linuxmi.com
do
echo "My name is $name"
done

說明:

  • name = 存儲字符串值的變量
  • do = 命令打印輸出
  • echo = 打印命令
  • done = 循環的退出命令

輸出:

這個 for 循環將迭代 3 次,因為在for語句中只指定了三個字符串值。

2. 循環遍歷有條件的字符串

如果你想傳遞一些邏輯條件來中途終止循環怎么辦?為此,你可以使用邏輯語句,例如IF語句。IF 語句控制循環的工作方式以及結果將打印什么輸出。

for distro in LinuxMi Debian CentOS Ubuntu; do
if [[ "$distro" == 'CentOS' ]]; then
break
fi
echo "distro: $distro"
done
echo '全部完成!'

只要 distro 的值等于 CentOS,循環就會終止,并打印輸出。循環運行直到不再滿足條件。

由于 CentOS 在值列表中排名第三,因此循環將運行兩次迭代,然后打印最終輸出全部完成!

在 Linux Bash 中運行循環

循環是 Linux shell 結構中必不可少的一部分,它可以極大地增強 Linux 腳本的功能。

如果你必須打印重復的輸出,沒有什么比 Bash 腳本中的循環更好的了。正如我們前面提到的,幾乎所有編程語言都可以使用循環,Python 也不例外。減少重復并遵循 DRY(不要重復自己)代碼。

責任編輯:龐桂玉 來源: 良許Linux
相關推薦

2009-12-01 08:54:30

Linux發行版

2009-03-15 10:01:54

Firefox瀏覽器分頁

2020-10-14 10:58:48

JavaScript工具Gitee

2025-04-23 09:47:57

開發場景請求

2021-12-26 22:53:42

5G基站技術

2010-06-23 17:34:03

Linux Bash

2019-08-05 13:41:24

5GVRAR

2010-06-23 16:35:50

Linux Bash

2010-06-23 17:37:14

Linux Bash

2022-03-28 11:10:35

ShellBash forLinux

2010-06-23 17:16:33

Linux Bash

2010-06-23 16:31:10

Linux Bash

2010-06-23 17:29:07

Linux Bash

2022-08-21 16:52:27

Linux虛擬內存

2023-07-27 17:41:02

BashZshFish

2010-06-23 11:09:14

Linux Bash

2010-06-23 16:05:36

Linux Bash

2010-06-23 15:55:36

Linux Bash

2010-06-23 17:07:47

Linux Bash
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产 日韩 欧美 在线 | 毛片网站在线观看视频 | 精品国产视频 | 亚洲一二三区在线观看 | 丁香久久 | 成人影| 亚洲男女激情 | 国产一区二区三区在线免费 | 亚洲精品一区二区三区在线 | 午夜爽爽男女免费观看hd | 中文字幕免费 | 欧美三级免费观看 | 亚洲视频国产视频 | 欧美精品在线观看 | 久久久久www | 九九九色 | 中文字幕视频一区 | 狠狠ri| 国产一区二区三区不卡av | 91精品www| 日韩美香港a一级毛片免费 国产综合av | 91久久精品一区二区三区 | 免费黄色av | www网站在线观看 | 中文字幕日韩av | 色婷婷精品久久二区二区蜜臂av | 亚洲欧美视频在线观看 | 在线黄 | 色综合一区 | 日日操日日干 | 亚洲精品久久久久久久久久久久久 | 这里有精品| 国产一区欧美一区 | 日韩中文字幕一区二区三区 | 孕妇一级毛片 | 久久网一区二区 | 欧美亚州 | 亚洲国产成人精品女人 | 亚洲成人免费 | 国产日韩欧美 | 91亚洲国产成人久久精品网站 |