如何写bash'for'循环

如何将bash'用于'shell脚本中的循环

知道什么

  • 在狂欢中为了循环,之间的所有语句完毕对列表或数字范围中的每个项目进行一次执行。
  • 有一个大列表,请使用{list}在起点和终点之间循环。使用省略于迭代全数范围,例如对于{1..10}中的数字
  • 要跳过某些数字,请在该范围内添加第三个数字。例如,使用{0..100..10}仅列出每10个数字。

在编程或脚本语言中,Bash提供了多种重复代码的方法(称为循环的过程)为了循环重复代码的某个部分。这允许一系列命令运行,直到满足特定条件为止。在本指南中,我们向您展示如何写bash为了环形。

如何循环浏览列表

脚本语言(例如Bash)具有与其他语言相似的编程结构。例如,导入参数从键盘获取输入并将这些输入存储为变量,然后根据输入参数的值执行某个操作

考虑一个简单的示例脚本标题为loop.sh

#!/bin/bash
1 2 3 4 5中的数字

回声$编号
完毕
出口0

使用的狂欢方式为了循环与其他编程和脚本语言处理方式有所不同为了循环。让我们分解脚本。

在狂欢中为了循环,之间的所有语句完毕列表中的每个项目都执行一次。在此示例中,列表是单词之后的一切-号码1 2 3 4 5

每次循环迭代时,列表中的下一个值都会插入单词之后指定的变量为了。在上面的循环中,变量称为数字

回声语句将信息显示到屏幕。因此,此示例将数字1至5的数字输入,然后将每个数字逐一输出到屏幕:

bash脚本中的循环示例

如何在起点和终点之间循环

此循环的麻烦。SH脚本是,如果要处理一个较大的列表(例如,1至500),将需要年龄才能输入所有数字。相反,指定一个开始点和端点:

#!/bin/bash
对于{1..10}中的数字

回声“ $号码”
完毕
出口0

规则是相同的。单词之后的值将列表归为迭代,并将列表中的每个值放在变量(即,数字)中,每次循环迭代时,完毕执行。

主要区别是列表的形成方式。卷曲支架表示一个范围,在这种情况下,范围为1到10(两个点分离范围的开始和末端)。

因此,此示例可以通过1到10之间的每个数字运行,并将数字输出到屏幕上。

可以像这样写的同样的循环句法与第一个示例相同:

1 2 3 4 5 6 7 8 9 10

如何跳过范围内的数字

上一个示例显示了如何在开始点和端点之间循环。这是在范围内跳过数字的方法。

例如,要在0到100之间循环,但仅显示每个第十个数字,请使用以下脚本获得此输出:

#!/bin/bash
对于{0..100..10}中的数字

回声“ $号码”
完毕
出口0

规则是相同的。有一个列表,一个变量和一组语句完毕。这次的清单看起来像:{0..100..10}

第一个数字为0,终点数为100。第三个数字(10)是将跳过的列表中的项目数。

因此,上面的示例显示以下输出:

替代bash循环输出

一个实用的例子

对于循环而言,要做的不仅仅是迭代数字列表。例如,以其他命令的输出为列表。

以下示例显示了如何从mp3

#!/bin/bash
用于文件./* .mp3

mpg -w ./wavs/"$ {file }".wav“ $ file”
完毕

此示例中的列表是当前文件夹中带有.mp3扩展名的每个文件,并且变量是一个文件。

MPG命令将MP3文件转换为WAV。但是,您可能需要首先使用软件包管理器安装此工具。

此页面有用吗?