运行一个 shell 脚本 N 次

Posted

技术标签:

【中文标题】运行一个 shell 脚本 N 次【英文标题】:Run a shellscript N times 【发布时间】:2021-05-22 17:42:47 【问题描述】:

我试图通过在另一个 shell 脚本中编写以下代码来运行一个 shellscript N 次,例如 loopRun.sh

#!/bin/bash
for i in 1..20
do
exec sampleShellscript.sh;
sleep 10
done

如下执行shellscript

sh -x loopRun.sh

内部 shellscript 运行了大约 30 秒,它没有循环就退出

请建议可以做些什么来达到预期的结果

【问题讨论】:

这可能会有所帮助:help exec 顺便说一句:sh (Bourne-shell) 通常不是 bash (Bourne-again shell)。 【参考方案1】:

exec 命令将当前的 shell 进程替换为正在执行的程序。如果程序完成后需要继续当前脚本,请不要使用它。

#!/bin/bash
for i in 1..20
do
    sampleShellscript.sh;
    sleep 10
done

由于1..20 是一个bash 扩展,您不能使用sh 运行脚本。使用

bash -x loopRun.sh

【讨论】:

以上是关于运行一个 shell 脚本 N 次的主要内容,如果未能解决你的问题,请参考以下文章

使用shell脚本批量运行caffe程序

菜鸟一位想写一个linux shell 脚本,执行次脚本回显数字,执行第一次回显1,执行第二次显示2,以此类推...

如何调试LoadRunner脚本

如何调试LoadRunner脚本

shell 脚本中$$,$#,$?分别代表啥意思?

运行shell脚本报错```$'\r':command not found```