当前位置: 首页 > 面试题库 >

获取子进程的pid

赫连泰宁
2023-03-14
问题内容

我正在使用python的多处理模块来生成新进程

如下 :

import multiprocessing
import os
d = multiprocessing.Process(target=os.system,args=('iostat 2 > a.txt',))
d.start()

我想获取iostat命令的pid或使用多处理模块执行的命令

当我执行时:

 d.pid 

它给了我运行此命令的subshel​​l的pid。

任何帮助都是有价值的。

提前致谢


问题答案:

你可以使用psutil:

import signal, psutil
def kill_child_processes(parent_pid, sig=signal.SIGTERM):
    try:
      parent = psutil.Process(parent_pid)
    except psutil.NoSuchProcess:
      return
    children = parent.children(recursive=True)
    for process in children:
      process.send_signal(sig)


 类似资料:
  • 问题内容: 我以这种方式创建子流程: 如何获取该子进程ID? PS我正在Linux上工作。 问题答案: 仍然没有为此的公共API(请参阅http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4244896),但是有解决方法。 第一个解决方法是使用像这样的外部程序,并使用来调用它以获得pid :) 另一个基于以下事实:该类是抽象的,并且实际上根据您的平

  • 问题内容: 是否可以从Shell脚本中的父进程ID获取子进程ID? 我有一个要使用Shell脚本执行的文件,这会导致一个新进程 process1 (父进程)。这个 过程1 已经分叉的另一个进程 过程2 (子进程)。使用脚本,我可以使用以下命令获取 process1 的pid : 但我无法获取子进程的pid。 问题答案: 只需使用:

  • 是否可以从外壳脚本中的父进程ID获取子进程ID? 我有一个要使用shell脚本执行的文件,这会导致一个新的进程process1(父进程)。此进程1已经派生了另一个进程process2(子进程)。使用脚本,我可以使用以下命令获得进程1的pid: 但是我无法获取子进程的pid。

  • 本文向大家介绍Python使用psutil获取进程信息的例子,包括了Python使用psutil获取进程信息的例子的使用技巧和注意事项,需要的朋友参考一下 psutil是什么 psutil是一个能够获取系统信息(包括进程、CPU、内存、磁盘、网络等)的Python模块。主要用来做系统监控,性能分析,进程管理,像glances也是基于psutil写成的。 在不了解这个模块之前,我都是直接用subpr

  • 问题内容: 我从shell脚本启动了一个后台进程,我想在脚本结束后终止该进程。 如何从我的shell脚本中获取此过程的PID?据我所知,变量包含当前脚本的PID,而不是后台进程。 问题答案: 您需要在启动时保存后台进程的PID: 您不能使用作业控制,因为它是一种交互式功能,并且与控制终端绑定在一起。脚本完全不必附加终端,因此作业控制不一定可用。

  • 我很可能错过了一些真正容易的东西,但我不明白为什么那些似乎对其他人都有效的东西对我却不有效。 目标:我想用非英语字符的本地输出运行shell命令,在变量中捕获输出,然后打印到屏幕。问题:所有我的输出应该有非英语字符被替换为? 思考:编码有问题吗?我正在运行Python3.8,不应该!!同样运行Windows10,但也发生在Windows7和Server2008中。 我尝试了子进程的许多变体--po