我正在构建一个nodejs命令行应用程序,它启动多个分离的子进程。其中一些是在指定端口监听的快速服务器。 正如我所提到的,这些过程是分离的。我如何存储有关这些分离的子进程的信息,如pid,以便在用户需要时将其杀死。
我已经尝试将它们写入一个通用文件,我后来读到该文件来获取数据。
有更好的方法吗?
答案 0 :(得分:0)
您不必真正跟踪所有子进程以终止它们。您可以使用Process Group ID (PGID)杀死所有子进程。
PGID=$(ps opgid= "$PID" | tr -d ' ')
kill -- -$PGID
您将通过
获得父进程ID(PID)ps aux | grep "process_name" | awk '{print $2}'
在您的情况下,流程名称将为" node"