码迷,mamicode.com
首页 > 系统相关 > 详细

获取磁盘使用率(Linux C)

时间:2018-07-11 20:38:39      阅读:459      评论:0      收藏:0      [点我收藏+]

标签:return   system   inux   disk   turn   sed   can   use   har   

#define SYS_DISK_BUFF_LEN 256 #define SYS_DISK_NAME_LEN 80 #define SYS_100_PERSENT 100 int get_sysDiskUsage() { FILE * fp; char filesystem[SYS_DISK_NAME_LEN],available[SYS_DISK_NAME_LEN],use[SYS_DISK_NAME_LEN],mounted[SYS_DISK_NAME_LEN],buf[SYS_DISK_BUFF_LEN]; double used,blocks,used_rate; fp=popen("df","r"); fgets(buf,SYS_DISK_BUFF_LEN,fp); double dev_total = 0,dev_used = 0; while(6 == fscanf(fp,"%s %lf %lf %s %s %s",filesystem,&blocks,&used,available,use,mounted)) { dev_total += blocks; dev_used += used; } used_rate = (dev_used/dev_total)*SYS_100_PERSENT; pclose(fp); return used_rate; }

获取磁盘使用率(Linux C)

标签:return   system   inux   disk   turn   sed   can   use   har   

原文地址:http://blog.51cto.com/qiaopeng688/2140582

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!