方法一、使用psutil库
import psutildef check_disk_space(path):usage = psutil.disk_usage(path)## 1GB = 1 * 1024 * 1024 * 1024字节if usage.free > 1 * 1024 * 1024 * 1024:return 1else:return 0disk_path = "/home"
result = check_disk_space(disk_path)
print(result)
方法二、使用os模块
import osdef check_disk_space(path):stat = os.statvfs(path)available_space = stat.f_bavail * stat.f_frsizeif available_space > 1 * 1024 * 1024 * 1024:return 1else:return 0disk_path = "/home"
result = check_disk_space(disk_path)
print(result)
方法三、使用shutil模块
import shutildef check_disk_space(path):usage = shutil.disk_usage(path)if usage.free > 1 * 1024 * 1024 * 1024:return 1else:return 0disk_path = "/home"
result = check_disk_space(disk_path)
print(result)
方法四、使用subprocess模块
import subprocessdef check_disk_space(path):command = f"df -B1 {path}"output = subprocess.check_output(command, shell=True).decode()## 解析输出结果lines = output.strip().split("\n")header = lines[0].split()values = lines[1].split()## 获取可用空间(以字节为单位)available_space = int(values[3])if available_space > 1 * 1024 * 1024 * 1024: # 1GB = 1 * 1024 * 1024 * 1024字节return 1else:return 0disk_path = "/home"
result = check_disk_space(disk_path)
print(result)
方法五、使用df命令行工具
df是一个常用的命令行工具,用于显示文件系统的磁盘空间使用情况。它可以在大多数类Unix操作系统(如Linux、Mac OS)上使用。
以下是df命令的基本语法:
df [选项] [文件或目录]
常用选项包括:
- -h:以人类可读的方式显示磁盘空间使用情况,以便更容易理解。例如,以GB、MB等单位显示文件大小
- -a:显示所有文件系统,包括特殊文件系统(如procfs、sysfs等)
- -i:显示inode的使用情况,而不是磁盘空间使用情况
- -T:显示文件系统类型
- -t
<文件系统类型>
:只显示指定类型的文件系统。例如,-t - -x
<文件系统类型>
:排除指定类型的文件系统。例如,-x tmpfs排除tmpfs类型的文件系统
示例用法:
df -h /home"""
输出:
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root 100G 90G 11G 90% /
"""