如何在系统开启时使用 if-else 语句运行无限循环

如何在系统开启时使用 if-else 语句运行无限循环

我正在研究机器人技术,我们在运行特定 .exe 时遇到了问题,而另一个(也是特定的).exe 正在运行。因此,我们希望在调用另一个之前杀死所有“有问题的”二进制文件。为此,我编写了一个带有 kill 的脚本,但我需要的是制作类似这样的脚本:

While(The robot is on){
    if(A problematic binary was called)
      Call the script to kill all problematic binaries that are running now
      Run the called binary
}

我已经映射了“有问题的”二进制文件,所以问题只是如何让这个循环一直运行。

谢谢你们!!

PS:我使用的是 Ubuntu 18.04

编辑:抱歉,我说得不清楚,我会尽量说清楚。大致如下:

我有:我们使用的不同二进制文件的列表,例如: Walk 、 Run 、 Jump 假设,例如,当调用 ./Run 并在之后调用 ./Walk 而不停止最后一个二进制文件时,系统崩溃。在 ./Run 之前调用 ./Walk 时也会发生同样的情况,但在调用 ./Jump 时没有问题

我想要的是:

当调用 ./Run 时 -> 验证 ./Walk 是否正在运行,并在运行 ./Run 之前将其终止 当调用 ./Walk 时 -> 验证 ./Run 是否正在运行,并在运行 ./Walk 之前将其终止

While(The robot is on){ if(A binary of the list,Walk or Run, is called) Kill all the binaries of the problematic list Run the called binary }

答案1

通过您提供的少量信息,您真正想要的是什么变得越来越不清楚,如果您只是想要在 bash 循环中执行一段时间,那么就没有必要启动守护进程。

这里有两个可以正常工作的例子。

while :
do
  # loop infinitely
done

或者

while true
do
   # loop infinitely
done

相关内容