我有一个管理流程的程序。它是为管理长时间运行的进程而设计的,当其中一个进程退出时,即使成功退出,整个进程管理器也会关闭。
例如,我有流程管理器的配置文件:
foo: foo --do-foo
bar: bar --do-bar
“foo”命令可能会退出 0,导致整个进程管理器(以及命令bar --do-bar
)关闭。
避免向所述流程管理器提交更改,或使用不同的流程管理器,我想我可以通过在命令末尾添加另一个“无害”命令来欺骗它不退出,这将导致它“停滞”,从而进程管理器不会关闭。我想到的一些想法是调用&& ruby
或&& read
使命令停止。
因此,回到之前的示例,我会将配置文件更改为:
foo: foo --do-foo && read
bar: bar --do-bar
然后,即使foo --do-foo
exited 0,该命令也会“停止”,因为我调用了read
,然后进程管理器不会关闭。
是否可以ruby
运行read
“无害”和/或“廉价”命令来欺骗我的流程管理器?或者是否有一个更简单的命令,我可以运行该命令来使进程“停止”并消耗很少/不消耗系统资源?
答案1
sleep infinity
可能就是我一直在寻找的。