我正在使用windows,我正在做这个实验,
console.log( _.process.exec( "mongod --dbpath . --port 8083 --bind_ip 127.0.0.1" ).pid );
问题是,当我执行 tasklist 命令时,该输出中的 PID 指向命令提示符任务,而不是 mongod.exe 任务。
有没有办法获取 mongod.exe 任务的真实 PID?
我正在使用windows,我正在做这个实验,
console.log( _.process.exec( "mongod --dbpath . --port 8083 --bind_ip 127.0.0.1" ).pid );
问题是,当我执行 tasklist 命令时,该输出中的 PID 指向命令提示符任务,而不是 mongod.exe 任务。
有没有办法获取 mongod.exe 任务的真实 PID?
我现在正在看这个,并认为我需要在子进程中运行 process.pid 并将其发回给父进程。然后,父母需要跟踪这个数字,以防孩子需要被杀死。
我希望这不会那么复杂?
那是因为mongod
是一个子进程cmd
并且tasklist
不打印子进程id
。
给定一个父进程 id,你可以得到它的子进程列表wmi query
:
wmic process where (ParentProcessId=CMD_PID) get Caption, ProcessId
替换CMD_PID
为父 (cmd) 进程 ID。