📌  相关文章
📜  python 检查磁盘空间 - Python (1)

📅  最后修改于: 2023-12-03 15:34:12.792000             🧑  作者: Mango

Python检查磁盘空间

Python可以通过调用系统的命令来检查磁盘空间,常用的命令为df -h,我们可以使用Python的subprocess模块来执行该命令并获取输出结果。

示例代码
import subprocess

def check_disk_usage(disk):
    """返回磁盘使用信息"""
    command = "df -h {}".format(disk)
    result = subprocess.check_output(command, shell=True)
    result = result.decode("utf-8")
    lines = result.split("\n")
    # 分离标题和数据
    headers = [value for value in lines[0].split(" ") if value != ""]
    values = [value for value in lines[1].split(" ") if value != ""]
    return dict(zip(headers, values))

if __name__ == "__main__":
    print(check_disk_usage("/"))
解释说明

我们定义了一个函数check_disk_usage,其参数为磁盘路径disk,函数返回一个字典对象,包含磁盘使用信息。

使用subprocess.check_output执行df -h命令,并通过split方法将输出结果按行分隔,分离出标题和数据,再通过zip方法将标题和数据组合成字典对象返回。

result = subprocess.check_output(command, shell=True)
result = result.decode("utf-8")
lines = result.split("\n")
# 分离标题和数据
headers = [value for value in lines[0].split(" ") if value != ""]
values = [value for value in lines[1].split(" ") if value != ""]
return dict(zip(headers, values))

if __name__ == "__main__":中调用check_disk_usage函数,并打印输出结果。

if __name__ == "__main__":
    print(check_disk_usage("/"))

输出结果:

{'文件系统': '/', '容量': '2.8G', '已用': '2.1G', '可用': '607M', '已用%': '76%', '挂载点': '/'}

这里返回了磁盘/的使用信息,包括文件系统、容量、已用空间、可用空间、已用百分比和挂载点。可以根据实际需求修改函数参数,获取其它磁盘的使用信息。