研究 "for "循环对一系列数字(即1到10)的语法和工作

168 阅读3分钟

我们都知道,许多编程的基本概念包含许多数据结构、变量、语句和循环。在运行一系列指令或在某些条件下做一些任务时,循环在所有的循环中非常有名。最著名和最常用的循环是 "for "循环。因此,今天我们将研究 "for "循环对一系列数字(即1到10)的语法和工作。让我们先在Ubuntu 20.04桌面系统上用 "Ctrl+Alt+T "命令打开一个终端外壳。

例1:

我们的第一个例子将涉及 "for "循环在编程语言中最常用的语法,即简单括号。让我们先在你的shell中利用 "touch "查询制作一个bash文件,输出如下。

$ touch bash.sh

bash文件已经在Ubuntu 20.04的基本主文件夹中成功创建。在一些编辑器工具中打开它,在其中创建一个bash脚本。你也可以使用 "vim "编辑器而不是 "nano "编辑器。

$ nano bash.sh

现在该文件在GNU nano,4.8编辑器中被打开。我们在文件的开头加入了bash支持。我们想通过使用 "for "循环来运行某些命令,最多重复10次。for "使用简单的括号作为第一个语法,并在其中指定了条件。根据迭代器 "I",该循环的起始值为 "1"。它将继续运行,直到迭代器的值变得小于或等于10。在每一次迭代中,迭代器的值都会递增1,直到迭代器变成10。在每个迭代中,"do "子句将被执行。它将运行 "echo "语句来显示使用迭代器 "I "的迭代数。按 "Ctrl+S "保存此代码。

按Ctrl+X键退出编辑器。使用 "bash "关键字和文件名来运行你的代码。你可以看到输出显示了由 "for "循环实现的10次迭代的结果。

$ bash bash.sh

例2:

使用 "for "循环的第二个简单方法是在大括号中提到它的迭代次数。用 "nano "命令再一次打开同一个bash文件。首先在其中添加bash扩展名。之后,"for "循环已经用 "for "这个词进行了初始化。现在,你必须在 "for "这个词后面指定迭代器变量 "I"。要提到的是,括号中的迭代范围必须在 "in "后面,如下图所示。这个范围被定义为从1到10,中间有两个点。for "循环将继续运行到10次迭代,即循环的 "do "子句。这个 "for "循环语法的要点是,不需要指定增量,因为它将自动增量为1。

执行 "for "循环的这一语法导致我们在 "do "子句中运行echo语句10次,迭代次数如下。

$ bash bash.sh

例3:

另一种在bash脚本中使用 "for "循环的方法与上面的方法很相似,只是有一点变化。在这个技术中, 我们将不在 "for "循环中使用任何括号.所以,在bash支持之后,用迭代器变量 "I "开始 "for "循环,后面是关键词 "in"。在 "in "字之后,你必须像我们在下面的代码中那样指定范围,即1到10。这个循环将像上面的例子一样工作,在终端上显示10次echo语句的信息和迭代号。

这段代码按照预期运行了10次 "echo "语句及其迭代号。

$ bash bash.sh

例4:

另一种定义 "for "循环的独特方法是在其中使用 "seq "表达式。因此,打开同样的文件,在其中加入bash扩展名。for "循环的语法已在下面所附的快照中显示。for "循环以迭代器变量 "I "和关键词 "in "开始。然后我们用表达式 "seq "来定义这个循环的范围,即1到10。seq "表达式已经被单个表达式冒号所取代,即"""。在序列值达到10之前,循环的echo语句将以其中提到的序列号继续执行。你可以看到这个方法中没有提到增量表达式。这意味着它将自动将迭代器增量为1。

在执行这个 "for "循环后,输出结果如下所示。显示的是10次迭代,迭代号在输出行中。

$ bash bash.sh

例5:

最后一个例子是对 "for "循环的一个补充说明。for循环已经开始,并且指定了迭代器 "a"。这个迭代器将英文字母作为其下一个连续的迭代器值。我们在这里选择了前10个英文字母,即A到J。"do "子句将继续运行echo语句,每次都用来显示每个字母,直到循环的结束。循环在这里结束,而且在这个方法中也没有定义适当的增量变量。

在bash命令和文件名的帮助下执行这个bash代码时,我们得到了10条显示从A到J的字母的输出语句。

$ bash bash.sh

总结

本指南总共涵盖了5种在bash脚本中使用 "for "循环的方法。本文中使用的所有例子都非常简单易懂,任何天真的bash用户都可以轻松实现。