用于Linux进程管理的Python库

hoj*_*oju 13 python linux process

通过我的Web界面,我想启动/停止某些进程并确定启动的进程是否仍在运行.

我现有的网站是基于Python的,并且在Linux服务器上运行,所以您知道一个支持此功能的合适库吗?

谢谢

Gia*_*olà 13

要启动/停止python子进程,可以使用子进程模块.要检查它们是否正在运行,您可以使用psutil:

>>> import psutil
>>> pid = 1034  # some pid
>>> psutil.pid_exists(pid)
True
>>>
Run Code Online (Sandbox Code Playgroud)

......或者这个(它还会检查PID是否已被重用):

>>> p = psutil.Process(pid)
>>> p.is_running()
True
>>>
Run Code Online (Sandbox Code Playgroud)


tyl*_*erl 6

通过查看/ proc目录的内容,完成检查正在运行的进程列表(即使是像"ps"这样的核心实用程序).

因此,您对查询正在运行的进程感兴趣的库与用于处理任何其他文件和目录的库相同(即,sys或者os,取决于您所追求的风格.但要特别注意os.path,它会执行大部分操作你在追求).要终止或以其他方式与流程交互,您可以发送信号,这是通过以下方式完成的os.kill.最后,您使用os.popen和朋友开始新的流程 .