Python编程语言中获取操作系统进程信息的方法

秒速五厘米 2022-05-20 10:13 287阅读 0赞

本文主要介绍在 Python 编程语言中,使用 psutil 模块获取操作系统进程信息的具体方法。

1 概述

psutil 是 Python 编程语言的一个进程和系统工具集模块,通过使用 psutil,可以获取操作系统中进程的相关信息。

本文中使用的 rpm 包为:python2-psutil.x86_64,该 rpm 包定义如下:

  1. python2-psutil.x86_64 : A process and system utilities module for Python

2 示例代码示例

下面给出一个示例程序,该程序有两个功能:获取 OS 中的所有进程信息,并打印出来;杀掉指定的进程。示例代码(process_oper_test1.py)的内容如下:

  1. #!/usr/bin/python
  2. # File name: process_oper_test1.py
  3. # Description: some process operations
  4. # Created on: 2018-07-19
  5. # Author: liitdar
  6. import psutil
  7. import os
  8. import signal
  9. print("----------------------------- show all processes info --------------------------------")
  10. # show processes info
  11. pids = psutil.pids()
  12. for pid in pids:
  13. p = psutil.Process(pid)
  14. # get process name according to pid
  15. process_name = p.name()
  16. print("Process name is: %s, pid is: %s" %(process_name, pid))
  17. print("----------------------------- kill specific process --------------------------------")
  18. pids = psutil.pids()
  19. for pid in pids:
  20. p = psutil.Process(pid)
  21. # get process name according to pid
  22. process_name = p.name()
  23. # kill process "sleep_test1"
  24. if 'sleep_test1' == process_name:
  25. print("kill specific process: name(%s)-pid(%s)" %(process_name, pid))
  26. os.kill(pid, signal.SIGKILL)
  27. exit(0)

接下来测试一下上述代码。

系统中现有一个名为“sleep_test1”的进程在运行,信息如下:

70

使用下面的命令运行 Python 示例程序,命令如下:

  1. [root@node1 /opt/liitdar/mydemos/simples]# python process_oper_test1.py

(部分)运行结果如下:

70 1

此时,再次查询“sleep_test1”进程,发现该进程不存在了(如下图),这说明上面的 Python 示例程序的功能正常。

70 2

发表评论

表情:
评论列表 (有 0 条评论,287人围观)

还没有评论,来说两句吧...

相关阅读

    相关 c# 获取服务器操作系统信息

    软件部署到多个服务器上时,我们需要做一些校验,比如有效期的校验,这就可能关联很多操作系统的物理参数,通过以下 方法可以获取一些相关参数,然后后通过UPD发包到控制中心,同时还