树莓派读取磁盘状态psutil
树莓派型号:Zero W
树莓派系统:Raspbian,2018-11-13-raspbian-stretch-lite.img
SD卡:闪迪32G class10 高速Micro SD卡(TF卡)
Python 2.7.3
使用python-psutil包来查询磁盘信息,如:总空间、已用空间、空闲空间等。
使用之前需要 import psutil,下面是测试程序,分别读取了磁盘和内存的总空间、已用空间、空闲空间,并以GB为单位进行显示:
1 # -*- coding:utf-8 -*- 2 import psutil 3 4 def main(): 5 print '>> disk total >> ' + str(psutil.disk_usage("/").total) 6 print '>> disk used >> ' + str(psutil.disk_usage("/").used) 7 print '>> disk avail >> ' + str(psutil.disk_usage("/").free) 8 print '>> disk percent >> ' + str(psutil.disk_usage("/").percent) + ' %' + '\n' 9 10 print '>> disk total/G >> ' + \ 11 str(round((((float(psutil.disk_usage("/").total)/1024)/1024)/1024), 2)) + 'G' 12 print '>> disk used /G >> ' + \ 13 str(round((((float(psutil.disk_usage("/").used) /1024)/1024)/1024), 2)) + 'G' 14 print '>> disk avail/G >> ' + \ 15 str(round((((float(psutil.disk_usage("/").free) /1024)/1024)/1024), 2)) + 'G' + '\n' 16 17 virtual_mem = psutil.virtual_memory() 18 print '>> mem total >> ' + str(virtual_mem.total) 19 print '>> mem used >> ' + str(virtual_mem.total - virtual_mem.available) 20 print '>> mem avail >> ' + str(virtual_mem.available) + '\n' 21 22 print '>> mem total /G >> ' + \ 23 str(round((((float(virtual_mem.total)/1024)/1024)/1024), 2)) + 'G' 24 print '>> mem used /G >> ' + \ 25 str(round((((float(virtual_mem.total-virtual_mem.available)/1024)/1024)/1024),2))+'G' 26 print '>> mem avail /G >> ' + \ 27 str(round((((float(virtual_mem.available)/1024)/1024)/1024), 2)) + 'G' + '\n' 28 29 if __name__ == '__main__': 30 main()
显示结果
扩展信息
psutil官方文档 https://psutil.readthedocs.io/en/latest/
主要提供下面几类函数:
System
- CPU
- Memory
- Disks
- Network
- Sensors
- Other system info
Processes
Windows services
详细信息和用法可以直接看官方文档,写得非常详细。