macOS上有没有类似Linux free命令的Python内存查看命令行工具?
macOS上有没有类似Linux free命令的Python内存查看命令行工具?
1 回复
macOS上可以用psutil库写个简单的Python脚本来实现类似free命令的功能。这个库能跨平台获取系统信息,包括内存使用情况。
#!/usr/bin/env python3
import psutil
import sys
def human_readable(bytes_value):
"""将字节转换为易读的格式"""
for unit in ['B', 'K', 'M', 'G', 'T']:
if bytes_value < 1024.0:
return f"{bytes_value:.1f}{unit}"
bytes_value /= 1024.0
return f"{bytes_value:.1f}P"
def main():
if not psutil:
print("需要安装psutil库: pip install psutil")
sys.exit(1)
mem = psutil.virtual_memory()
swap = psutil.swap_memory()
print("内存使用情况:")
print(f"总内存: {human_readable(mem.total)}")
print(f"已使用: {human_readable(mem.used)}")
print(f"空闲: {human_readable(mem.available)}")
print(f"使用率: {mem.percent}%")
print("\n交换分区:")
print(f"总交换: {human_readable(swap.total)}")
print(f"已使用: {human_readable(swap.used)}")
print(f"空闲: {human_readable(swap.free)}")
print(f"使用率: {swap.percent}%")
if __name__ == "__main__":
main()
保存为meminfo.py,运行前先装依赖:pip install psutil。输出格式类似free -h,显示总内存、已用、空闲和使用百分比,包括物理内存和交换分区。
这脚本比系统自带的vm_stat输出更直观,数据也够用。

