Linux下读取磁盘硬盘容量大小的C代码实现,不用df -h命令
来源:互联网 发布:js单选alery 编辑:程序博客网 时间:2024/05/29 17:10
众所周知, df 命令显示磁盘的容量,但是我们需要用C代码来读取的时候, 总不能使用shell脚本吧。所以下面给出了其实现, 实现的结果和用df -h命令显示的基本一致
[root@localhost ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/VolGroup00-LogVol00
14G 11G 2.5G 81% /
/dev/sda1 99M 21M 73M 23% /boot
tmpfs 252M 0 252M 0% /dev/shm
如下为C代码的实现
#include <sys/vfs.h>
struct statfs diskInfo;statfs("/", &diskInfo);unsigned long long totalBlocks = diskInfo.f_bsize;unsigned long long totalSize = totalBlocks * diskInfo.f_blocks;size_t mbTotalsize = totalSize>>20;unsigned long long freeDisk = diskInfo.f_bfree*totalBlocks;size_t mbFreedisk = freeDisk>>20;printf ("/ total=%dMB, free=%dMB\n", mbTotalsize, mbFreedisk);statfs("/boot", &diskInfo);totalBlocks = diskInfo.f_bsize;totalSize = totalBlocks * diskInfo.f_blocks;mbTotalsize = totalSize>>20;freeDisk = diskInfo.f_bfree*totalBlocks;mbFreedisk = freeDisk>>20;printf ("/boot total=%dMB, free=%dMB\n", mbTotalsize, mbFreedisk);statfs("/dev/shm", &diskInfo);totalBlocks = diskInfo.f_bsize;totalSize = totalBlocks * diskInfo.f_blocks;mbTotalsize = totalSize>>20;freeDisk = diskInfo.f_bfree*totalBlocks;mbFreedisk = freeDisk>>20;printf ("/dev/shm total=%dMB, free=%dMB\n", mbTotalsize, mbFreedisk);
执行输出如下:
/ total=13763MB, free=3246MB
/boot total=98MB, free=78MB
/dev/shm total=251MB, free=251MB
希望对大家有用!
- Linux下读取磁盘硬盘容量大小的C代码实现,不用df -h命令
- Linux命令_ df 磁盘整体使用量 /du 查看目录的大小
- Linux下磁盘保留空间的调整,解决df看到的空间和实际磁盘大小不一致的问题
- linux磁盘管理命令--df
- linux磁盘存储命令 df
- linux查看磁盘命令:df
- Linux下磁盘管理命令df与du
- linux下获取磁盘使用情况的命令 (df du )
- 随笔linux命令df中df -h和df -i的区别
- linux下 df 命令
- df 和du 的区别 linux磁盘命令详解
- df 和du 的区别 linux磁盘命令详解
- df 和du 的区别 linux磁盘命令详解
- Linux查看磁盘的使用情况命令: df 和 du
- df 和du 的区别 linux磁盘命令详解
- df 和du 的区别 linux磁盘命令详解
- Linux查看磁盘的使用状况命令du、df
- Linux下查看文件和文件夹大小的df和du命令
- linux下永久性修改ip地址
- Win8下IE10安装Flex调试flashpalyer控件失败的解决办法
- 程序员的学习和积累
- 杭电 ACM 1012
- Delphi图像处理 -- 图像黑白调整
- Linux下读取磁盘硬盘容量大小的C代码实现,不用df -h命令
- 【求助】大神专家们都来看看,我忙活了一整个下午,运用基础C++写的小游戏为啥还有错误;
- 杭电 ACM 1008
- Python数据结构:图的实现(转)
- c++基础2:使用VS2010 创建最简单的MFC应用程序窗体
- 函数返回或参数返回值
- python图的表示与搜索
- 百度之星 题目1
- 安全通信系统--OpenSSL服务器和客户端