这是用C语言写成的一个适用于Linux的小工具,能够比较方便地算出单个或者全部挂载点(mount point)下的磁盘使用情况,包括显示该磁盘分区的设备类型、每一块的大小、总空间大小、预留给root用户的空间大小、已使用的空间大小、可用的空间大小、已使用的空间百分比,以及占用空间最多的10个目录。执行效果图如下:
其实,组合使用Linux的Shell命令,df、du、find、sort、head等等,也能达致同样的功能。但是,我觉得C写的程序在执行效率和格式化输出方面有优胜的地方,而且,相当多代码都能够重用GNU的coreutils包的内容,只需要少量的修改和增补就能够完成此程序的开发,并移植到其它Unix平台。
我把该程序命名为eathd,是eat hard disk的简写,意思就是,检查一下哪个分区的空间被吃掉了最多,哪个目录下的文件吃掉的硬盘空间最多。
目前最新版本为0.1.0,仅仅适用于Linux。我的同事已经将它成功移植到HP-UX和Solaris,待进一步完善后,将适时公开后续优化版本。同时也希望各位同行、各路高人能够提供一下宝贵意见。这个小程序可以改进的地方还是很多的,在此不胜感激。
以下是eathd-0.1.0.tar.gz的下载地址:
http://download.csdn.net/source/2885226
下载解包之后执行make编译即可。
以上是eathd-0.1.0的发布贴,如打算进一步深究其设计过程的可以参考《谁吃了你的硬盘空间?》系列的前两篇博文:
诡异的df算法
获取文件系统与文件信息
分享到:
相关推荐
(Visual C++编程 源代码)9.如何判断文件在磁盘上是否存在?(Visual C++编程 源代码)9.如何判断文件在磁盘上是否存在?(Visual C++编程 源代码)9.如何判断文件在磁盘上是否存在?(Visual C++编程 源代码)9....
(Visual C++编程 源代码)11.如何在列表框中自动装载磁盘文件列表?(Visual C++编程 源代码)11.如何在列表框中自动装载磁盘文件列表?(Visual C++编程 源代码)11.如何在列表框中自动装载磁盘文件列表?(Visual...
ASP.NET多语种网络硬盘系统的设计(源代码+论文)源代码下载源代码下载 ASP.NET多语种网络硬盘系统的设计(源代码+论文)源代码下载源代码下载 ASP.NET多语种网络硬盘系统的设计(源代码+论文)源代码下载源代码下载
硬盘参数测试代码,硬盘参数测试资料及源代码硬盘参数测试资料及源代码
如果读者需要使用光盘中的源代码,请将相关目录及其包含的内容复制到您的硬盘上,并修改对应的硬盘目录属性——取消目录及其所包含子目录和文件的“只读”属性。否则,打开VC项目时由于无法进行文件的“写”操作,会...
虚拟磁盘 源代码 filedisk 源文件 源程序
本程序使用VS2005编译,展示了Windows下简单的磁盘信息获取方法
linux虚拟磁盘源代码,通过内存虚拟磁盘。是初学linux驱动编程的参考代码 1. 使用insmod加载驱动程序。rmod卸载驱动程序。 dmesg |tail -20查看最后的内核调试信息输出。 2. 加载成功后,可在/dev目录下,看到加载...
一个完整的高级硬盘信息获取源代码,没有使用微软的WMI,使用磁盘API函数获取。可以或者硬盘的有关信息,如磁盘固件版本、硬盘类型、硬盘型号、序列号、磁盘柱面、磁头数、扇区数。以及主从盘信息,磁盘空间大小,每...
磁盘修复程序checkdisk源代码.zip
windows磁盘碎片整理程序源代码.zip
C#网络硬盘源代码 1.可以直接打开项目文件以查看源代码。 2. 若不成功的话,读者可以新建立一个项目, 把该项目文件夹下的所有内容复制到新项目中, 也可以通过添加功能把所内容添加到新项目中。 3.把DAL项目添加...
windows磁盘管理程序源代码.zip
查看磁盘分区信息的 C 语言源代码,可供大家研究一下吧
VB 建立磁盘影射源代码 VB 建立磁盘影射源代码
用C++获取硬盘的序列号ID以及网卡的MAC地址的源代码,可以用此方式结合md5加密算法进行软件加密。
可以利用VB直接读取硬盘上的数据,带源代码
网络硬盘(C#,php,asp源代码),含有三种语言实现的网络硬盘.代码简单实用.
如何获取磁盘空间程序(visual studio VB源代码编写)对今后学习vb.net很帮助
2.磁盘功能设置演示(Visual C++编程 源代码)2.磁盘功能设置演示(Visual C++编程 源代码)2.磁盘功能设置演示(Visual C++编程 源代码)2.磁盘功能设置演示(Visual C++编程 源代码)2.磁盘功能设置演示(Visual ...