【问题标题】:Track process-ids of sub-/child-processes?跟踪子/子进程的进程 ID?
【发布时间】:2010-12-24 02:43:54
【问题描述】:

我需要从 Java (>= 1.5; ProcessBuilder) 内部执行和终止/中止不同的 shell 脚本。使用标准的 java 机制,我只能杀死用于执行 shell 脚本的主进程。当这个 shell 脚本启动其他进程(例如 ./foo.sh &; ./bar.sh &)时,当我终止/中止 Java 中的主 shell 脚本进程时,这些进程仍在运行。

如何从 Java 内部跟踪所有新子/子进程的所有 ID?有没有办法做到这一点?或者是否有可能(在 *nix- 和 Win-OSes 中)找到由一个已知​​进程产生的所有进程?

谢谢, 托马斯

【问题讨论】:

    标签: java linux build-process operating-system


    【解决方案1】:

    如果您可以控制不同的脚本,则可以将它们的子进程的 PID(使用 $! 来查找上次运行的后台进程的 PID)传回 Java 主程序。 这似乎是一种相当干净的方式来满足您的需求。

    否则,this seems rather promising

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-01-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-27
      • 1970-01-01
      相关资源
      最近更新 更多