如何自动终止脚本内命令的无限执行?

How to terminate infinite execution of command inside script automatically?

我的 bash 脚本中有一个命令可以开始无限执行。当它发生时,我想终止该命令的进程并继续执行脚本。

我用谷歌搜索并试图找到重复的答案 - 没有结果:(

"myProgram" 是 bash 脚本中的 C 语言简单程序,可将“*”打印到 "stars.txt" 文件。 它是用命令 gcc myProgram .cpp -o myProgram 编译的。 "myProgram" 可以开始无限执行,我想在它发生时终止它。

...
./myProgram 2>> log.txt > stars.txt
...

请帮助我解决问题或指向 material 以帮助我获得答案。如果您需要任何其他信息,请询问,我会尽快答复:)

您可以使用timeout shell命令退出命令并开始执行下一行,以防命令花费的时间超过超时值中指定的时间。

...
timeout 100 ./myProgram 2>> log.txt > stars.txt
...

在上面的程序中,如果超过 100 秒,您的 ./myProgram 将退出。