欢迎访问宙启技术站
智能推送

使用Python的psutil库获取系统的用户和登录信息

发布时间:2023-12-11 16:15:19

psutil是一个跨平台的Python库,用于获取有关系统进程和系统利用率(CPU,内存,磁盘,网络等)的信息。它包含了获取系统用户和登录信息的功能。

要使用psutil库,首先需要在Python环境中安装它。可以使用pip包管理器来安装psutil库,命令如下:

pip install psutil

安装完成后,我们就可以开始使用psutil库来获取系统的用户和登录信息了。

下面是一个使用psutil库获取系统用户和登录信息的示例代码:

import psutil

# 获取当前登录的用户
current_user = psutil.users()[0].name
print(f"当前登录的用户: {current_user}")

# 获取所有登录的用户
all_users = [user.name for user in psutil.users()]
print(f"所有登录的用户: {all_users}")

# 获取系统每个用户的登录信息
for user in psutil.users():
    username = user.name
    terminal = user.terminal
    host = user.host
    started = user.started
    print(f"用户: {username}, 终端号: {terminal}, 主机名: {host}, 登录时间: {started}")

上述代码中,首先使用psutil.users()方法获取当前登录的用户信息。由于该方法返回一个列表,我们可以通过索引获取 个用户的信息。然后使用.name属性获取用户名,并打印出当前登录的用户。

接下来,我们使用同样的方法获取所有登录的用户信息,并将它们的用户名保存在一个列表中。然后,使用循环遍历所有用户,并使用对应的属性获取用户的终端号,主机名和登录时间,并将它们打印出来。

输出的结果可能是这样的:

当前登录的用户: administrator
所有登录的用户: ['administrator', 'guest']
用户: administrator, 终端号: tty1, 主机名: localhost, 登录时间: 1623347808
用户: guest, 终端号: tty2, 主机名: localhost, 登录时间: 1623347814

在这个示例中,我们获取了当前登录的用户和所有登录的用户,并输出了每个用户的终端号,主机名和登录时间。

使用psutil库,我们可以方便地获取系统的用户和登录信息。这对于监控系统活动、识别异常活动以及进行系统管理非常有用。