psutil的Process python获取进程信息

系统进程信息 psutil.Process()

1. 创建指定进程号的对象

s = psutil.Process(1701)

2. 进程PID:pid

s.pid

在这里插入图片描述

3. 进程名称:name()

s.name()

在这里插入图片描述

4. 进程当前状态:status()

s.status()

在这里插入图片描述

5. 进程是否还在运行 :is_running()

返回此进程是否正在运行。它还检查PID是否已被另一个进程重用,在这种情况下返回False。

s.is_running()

在这里插入图片描述

6. 父进程对象:parent()

预先返回父进程作为进程对象,检查PID是否已被重用。如果没有父节点,则返回None。

s.parent()

在这里插入图片描述

7. 父进程pid :ppid()

进程父PID。在Windows上,返回值在第一次调用之后缓存。

s.ppid()

在这里插入图片描述

8. 进行执行路径:exe()

进程作为绝对路径执行。也可以是空字符串。返回值在第一次调用后缓存。

s.exe()

在这里插入图片描述

9. 调用进程的命令:cmdline()

调用此进程的命令行

s.cmdline()

在这里插入图片描述

10. 进程工作路径:cwd()

将当前工作目录处理为绝对路径。

s.cwd()

在这里插入图片描述

11. 进程创建时间:create_time()

s.create_time()

在这里插入图片描述

12. 使用进程的用户名:username()

拥有流程的用户的名称。在UNIX上,这是通过使用real process uid计算的。

s.username()

在这里插入图片描述

13. 进程优先级:nice()

获取或者设置进程的优先级,value值就是需要设置的优先级,默认为None,是获取当前进程的优先级

def nice(self, value=None):
     """Get or set process niceness (priority)."""
     if value is None:
         return self._proc.nice_get()
     else:
         if not self.is_running():
             raise NoSuchProcess(self.pid, self._name)
         self._proc.nice_set(value)
s.nice()

在这里插入图片描述

14. 进程有关的终端:terminal()

与此进程关联的终端(如果有的话),否则为None。

s.terminal()

在这里插入图片描述

15. 文件描述符:num_fds()

返回此进程打开的文件描述符的数量(仅POSIX)。

 s.num_fds()

在这里插入图片描述

16. 进程I/O数据统计

返回进程I/O统计信息作为(read_count、write_count、read_bytes、write_bytes) namedtuple。这些是执行的读/写调用的数量和进程读取和写入的字节数。

s.io_counters()

在这里插入图片描述

17. 进程I/O优先级:

获取或设置进程I/O的良好性(优先级)。在Linux上,ioclass是ioprio_class_常量之一。value是一个从0到7的数。值越高,进程的I/O优先级越低。在Windows上只使用ioclass*,它可以被设置为2(正常)、1(低)或0(非常低)。只适用于Linux和Windows > Vista。

def ionice(self, ioclass=None, value=None):
    if ioclass is None:
         if value is not None:
             raise ValueError("'ioclass' argument must be specified")
         return self._proc.ionice_get()
     else:
         return self._proc.ionice_set(ioclass, value)
 s.ionice()

在这里插入图片描述

18. 进程运行在哪个CPU上:cpu_num()

返回该进程当前运行在哪个CPU上。返回的数字应该<= psutil.cpu_count()和< = len (psutil.cpu_percent (percpu = True))。它可以与psutil.cpu_percent(percpu=True)结合使用,观察分布在cpu上的系统工作负载。

s.cpu_num()

在这里插入图片描述

19. 进程环境变量:environ()

将过程的环境变量作为dict。注意:这可能不反映流程启动后所做的更改。

s.environ()

在这里插入图片描述

20. 进程使用的线程数:num_threads()

返回此进程使用的线程数。

s.num_threads()

在这里插入图片描述

21. 当前进程的子进程:children()

 s.children()

在这里插入图片描述

22. 当前进程CPU利用率:cpu_percent()

返回一个浮点数,该浮点数表示当前进程CPU利用率的百分比

s.cpu_percent()

在这里插入图片描述

23. 进程信息:cpu_times()

返回一个(user, system, children_user, children_system)元组,表示累积的进程时间,单位为秒。这类似于os.times(),但是是针对每个进程。在macOS和Windows上,children_user和children_system总是设置为0。

s.cpu_times()

在这里插入图片描述

24. 进程内存信息:memory_info()

返回一个带有变量字段的元组,这些变量字段取决于平台,表示关于进程的内存信息。所有plaforms上的“可移植”字段都是“rss”和“vms”。所有数字都用字节表示。

s.memory_info()

在这里插入图片描述

25. 进程内存占比:memory_persent()

将进程内存与整个物理系统内存进行比较,并计算进程内存利用率的百分比。memtype参数是一个字符串,它指示您希望与哪种进程内存类型进行比较(默认为“rss”)。可用字符串列表如下:> > > psutil.Process () .memory_info ._fields ()(“rss”、“虚拟机”,“共享”,“文本”,“自由”、“数据”、“脏”,“航空母舰”,pss)

s.memory_persent()

在这里插入图片描述

26. 进程打开的文件:open_files()

s.open_files()

在这里插入图片描述

27. 进程打开的套接字连接:connections()

返回进程打开的套接字连接的列表(fd、family、type、laddr、raddr、status)名元组。匹配以下条件的连接的kind参数过滤器:
在这里插入图片描述

s.connections()

28. 暂停进程PID,查看是否被重用:suspend()

使用SIGSTOP暂停进程执行,预先检查PID是否已被重用。在Windows上,这将不会挂起所有进程线程。

29. 恢复进程:resume()

使用SIGCONT预先检查PID是否已被重用,恢复进程执行。在Windows上,这可以恢复所有进程线程。

30. 终止进程:terminate()

使用SIGTERM提前终止进程,检查PID是否已被重用。在Windows上,这是kill()的别名。

31. 终止进程:kill()

使用SIGKILL预先终止当前进程,检查PID是否已被重用。

32. 等待进程终止:wait()

等待进程终止,如果进程是os.getpid()的子进程,也返回它的退出代码,否则为None。如果进程已经终止,则立即返回None,而不是引发NoSuchProcess。如果指定了timeout(以秒为单位),并且进程仍然是活着提高TimeoutExpired。要等待多个进程,可以使用psutil.wait_procs()。

### 回答1: 在Python中,可以使用`psutil`模块来获取进程的名称。 首先,需要安装`psutil`模块。可以通过在命令行中运行`pip install psutil`来安装。 安装完成后,可以在代码中引入`psutil`模块: ```python import psutil ``` 要获取当前Python进程的名称,可以使用`psutil.Process().name()`方法: ```python process_name = psutil.Process().name() print("当前进程名称为:", process_name) ``` 如果要获取指定pid进程的名称,可以使用`psutil.Process(pid).name()`方法,其中`pid`为进程的PID(进程ID)。 ```python pid = 1234 # 这里的1234为进程的PID process_name = psutil.Process(pid).name() print("进程PID为", pid, "的进程名称为:", process_name) ``` 需要注意的是,`psutil`模块在Linux、Windows和macOS等平台上都可以使用,但在Windows系统中,在使用`psutil`模块之前,需要安装`pywin32`模块。可以通过在命令行中运行`pip install pywin32`来安装。 另外,`psutil`模块不仅可以获取进程名称,还可以获取进程的PID、CPU使用率、内存使用量等信息,非常方便实用。 ### 回答2: 在Python中,我们可以通过使用`psutil`模块来获取进程的名称。`psutil`是一个跨平台的库,可以获取系统的各种信息,包括进程信息。 首先,我们需要安装`psutil`。可以使用`pip`命令来安装它: ``` pip install psutil ``` 安装完成后,我们可以在Python脚本中导入`psutil`模块: ```python import psutil ``` 要获取进程的名称,我们可以使用`psutil`的`Process`类。可以通过传入进程的ID或者名称来创建一个`Process`对象。例如,我们可以通过传入进程ID来获取进程的名称: ```python process = psutil.Process(pid) name = process.name() ``` 其中,`pid`是你要获取名称的进程的ID。`name()`方法将返回进程的名称。 另外,我们也可以使用`psutil`的`process_iter()`函数来获取当前所有运行的进程,并遍历它们以获取进程的名称。例如: ```python for process in psutil.process_iter(): name = process.name() print(name) ``` 上述代码会输出当前所有运行的进程的名称。 综上所述,我们可以使用`psutil`模块来获取进程的名称。可以通过传入进程ID或者遍历所有进程获取进程的名称。 ### 回答3: 在Python中,可以使用`psutil`模块来获取进程的名称。`psutil`是一个跨平台的Python库,可以用来获取系统信息,包括进程相关信息。 首先,需要安装`psutil`库。可以通过以下方式使用pip安装: ``` pip install psutil ``` 安装完成后,就可以在Python代码中导入`psutil`模块,使用其提供的方法来获取进程的名称。 下面是一个示例代码,演示如何使用`psutil`获取当前运行的进程的名称: ```python import psutil def get_process_name(): process_name = None process = psutil.Process() try: process_name = process.name() except psutil.NoSuchProcess: process_name = "进程不存在" return process_name if __name__ == "__main__": process_name = get_process_name() print("当前进程名称为:", process_name) ``` 在上述代码中,首先导入了`psutil`模块。然后定义了一个`get_process_name`函数,该函数使用`psutil.Process()`获取当前进程的实例,并通过`name()`方法获取进程的名称。由于进程可能不存在的情况,即被终止,所以在获取进程名称时需要使用`try except`处理`psutil.NoSuchProcess`异常。最后,在`if __name__ == "__main__":`条件下调用`get_process_name`函数,并打印出获取到的进程名称。 运行以上代码,就可以获取当前进程的名称。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值