如何在 Linux 中多次运行命令?


在某些情况下,您可能希望运行特定命令“N”次。在正常的编程中,这可以通过在该编程语言中可用的任何循环结构来完成。在 Linux bash 中,我们也有循环和其他一些方法可以重复运行命令“N”次。

在本教程中,我们将探索不同的 bash 脚本,这些脚本将允许我们多次运行某个命令。

当您想使用 bash 脚本时,第一步是创建一个。在 Linux 或 macOS 机器上,您可以使用以下命令创建 bash 文件:

touch mybash.bash

请注意,文件名称可以是任何名称,但文件扩展名必须相同(即 bash)。保存 bash 脚本后,使用以下命令执行它:

bash mybash.bash

现在我们知道了如何创建和运行 bash 文件,让我们探索所有这些不同的示例。

使用“for”循环重复命令

您可以使用“for”循环多次打印某个命令。 “for”循环有不同的变体,我们将借助不同的 bash 脚本探索所有这些变体。

首先,让我们考虑一个简单的非条件“for”循环,我们将使用它打印一个简单命令 5 次。请考虑以下 bash 脚本:

# using a for loop

for i in {1..5}
do
   echo 'Sr-no: $i - Welcome to Tutorialspoint'
done

保存此脚本然后执行它。您将在终端上获得以下输出:

Sr-no: 1 - Welcome to Tutorialspoint
Sr-no: 2 - Welcome to Tutorialspoint
Sr-no: 3 - Welcome to Tutorialspoint
Sr-no: 4 - Welcome to Tutorialspoint
Sr-no: 5 - Welcome to Tutorialspoint

另一种实现相同目标的更简单方法是将上述 bash 脚本代码写在一行中,这可能一开始看起来有点奇怪,但它用更少的行数完成了相同的工作。

# using a for loop
for i in {1..5}; do echo 'Sr-no : $i - Welcome to TutorialsPoint'; done

以上两个 bash 脚本都使用了非条件“for”循环,但您也可以使用基于条件的“for”循环来打印某个命令“N”次。例如,请查看以下 bash 脚本:

# using a for loop
for ((i=0;i<5;i++)); do echo 'Sr-no : $i - Welcome to TutorialsPoint'; done

执行上述 bash 脚本,您会注意到它产生了相同的输出。

使用“while”循环

您也可以在 Bash 脚本中使用“while”循环来多次打印某个命令。例如,请考虑以下所示的 bash 脚本。

# using a while loop
i=1
while [[ $i -le 5 ]]; do
   echo 'Sr-no: $i - We all love Linux.'
   let ++i;
done

运行上述脚本,它将在终端上产生以下输出:

Sr-no: 1 - We all love Linux.
Sr-no: 2 - We all love Linux.
Sr-no: 3 - We all love Linux.
Sr-no: 4 - We all love Linux.
Sr-no: 5 - We all love Linux.

使用 Bash 函数

您可以使用 Bash 函数来多次打印某个命令。例如,请考虑以下所示的 bash 脚本。

# using a bash function

function repeatNTimes(){
   for ((i=0;i<$1;i++));
   do
      eval ${*:2}
   done
}
repeatNTimes 5 echo 'The tougher it gets, the cooler I get'

这里我们创建了一个名为“repeatNTimes”的用户定义函数,然后调用它来打印一个字符串 5 次。保存并执行此 bash 脚本。您将获得以下**输出**:

The tougher it gets, the cooler I get
The tougher it gets, the cooler I get
The tougher it gets, the cooler I get
The tougher it gets, the cooler I get
The tougher it gets, the cooler I get

结论

在本教程中,您学习了在 Linux 中多次重复命令的不同方法。

更新于: 2022-07-19

8K+ 浏览量

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告