当前位置:  技术问答>linux和unix

请问ioctl能得到某个硬盘已经使用空间的信息吗?

    来源: 互联网  发布时间:2015-12-18

    本文导语:  我知道通过ioctl(fd,BLKGETSIZE,&f_size)可以得到某个硬盘的空间大小信息,请问有有没有类似的办法获得该硬盘已经使用空间的大小. 当然,如果使用df -k也可以得到硬盘使用空间的信息,不过那么做需要把输出信息重定向...

我知道通过ioctl(fd,BLKGETSIZE,&f_size)可以得到某个硬盘的空间大小信息,请问有有没有类似的办法获得该硬盘已经使用空间的大小.
当然,如果使用df -k也可以得到硬盘使用空间的信息,不过那么做需要把输出信息重定向到文件,然后再对文件进行解析才行,很麻烦。

忘哪位大侠不吝赐教,是在感激不尽。

|
用getmntent  和statfs  两个函数,可以得到硬盘使用情况信息
 
 struct mntent *getmntent(FILE *filep);
将 得到的 mntent->mnt_dir 作为 statfs 的参数传进去
int statfs(const char *path, struct statfs *buf);

struct statfs {
                 long    f_type;     /* type of filesystem (see below) */
                 long    f_bsize;    /* optimal transfer block size */
                 long    f_blocks;   /* total data blocks in file system */
                 long    f_bfree;    /* free blocks in fs */
                 long    f_bavail;   /* free blocks avail to non-superuser */
                 long    f_files;    /* total file nodes in file system */
                 long    f_ffree;    /* free file nodes in fs */
                 fsid_t  f_fsid;     /* file system id */
                 long    f_namelen;  /* maximum length of filenames */
                 long    f_spare[6]; /* spare for later */
              };

受益于flyzzh的指教,呵呵

    
 
 

您可能感兴趣的文章:

  • 菜问一则:请问用什么命令可得到系统路径
  • 请问:使用System.getProperty(),或者如何得到属性文件的路径
  • 请问调用那个方法能够得到变量类型的返回值?
  • 请问Java如何得到本地机器名字?
  • 请问各位,getYear()得到的当前年,怎么是102?
  • 请问如何得到表单中的combox中的值
  • 请问怎样能得到rs的记录集
  • 请问如何得到系统的时间,然后将时间形式改为:16:00:00 PM ?
  • 请问在脚本里怎么得到一个程序运行的返回值,脚本怎么返回值?
  • 高分请教:请问怎么才能得到最近所有有关文件操作(新建,删除等)的记录
  • 请问:如何得到自己机器的ip和子网掩码???
  • 请问如何在内核中得到无线网卡IP?
  • 请问如何得到QTextBrowser和QTextEdit里面的文字
  • 请问要得到远程访问站点的ip地址以及所在的页面,用request的什么方法?
  • 请问,C语言socket编程中,客户端如何得到自己的IP?不要0.0.0.0
  • 请问如何从完整的路径加文件名中得到这个文件名?
  • 请问:如何得到类和方法的分析树?
  • 请问如何得到ResultSet的行数,并且让它显示在JOptionPane.showMessageDialog中?
  • 请问如何得到某个字符串的部分字段,急!
  • 请问怎么得到JDK1。4?
  • 请问在linux下面,有没有硬盘整理的功能,或者有什么软件可以实现硬盘整理的功能?
  • 请问如何在SCSI硬盘上装LINUX7。1,总是提示找不到硬盘
  • 请问安装ubuntu的硬盘,如果被拆走的话,是否能看到硬盘上的文件?
  • 各位大虾,请问怎样在启动菜单中指定由硬盘启动(象EASYBOOT,JO.SYS..启动时指定由硬盘启动)?
  • 在装过蓝点liunx后重新分区硬盘后再装windows,硬盘不能启动,只停在lilo 处,请问怎样才能处理这个问题?
  • 两个硬盘挂在sil 680rain卡上,安装rh7.3时,只认那个40G的硬盘,另一个6G的认不出,请问题怎么装rh到6G硬盘上?
  • 请问如何让DMA方式读取硬盘啊?
  • 请问,我已经把LINUX8.0的前三张盘,全部复制到了硬盘上了.我光知道用光盘的装法,但我不会在硬盘上装.怎么装,是不是把所有的文件都拷到一个
  • 请问从硬盘安装过Linux的朋友?
  • 请问SCIS硬盘能不能GHOST?
  • 请问在linux下怎么使用scsi硬盘?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 请问那里有SYBASE的jbdb 2.0下载;jspsmartupload可以直接将文件上传到数据库,请问如何使用
  • 请问在unix下,如何察看以前使用者的使用命令
  • 请问:在使用oracle数据库作开发时,是使用pro*c作开发好些,还是使用库函数如oci等好一些啊?或者它们有什么区别或者优缺点啊?
  • 在ACC变成中要使用发ftp传送文件,但文件名不确定,请问怎么样在程序的FTP中使用字符串变量???
  • 请问有谁手上有IBM 的MQSeries Workflow的使用手册,或者别的Workflow产品的使用手册也行
  • fork~exec不会使用,请问怎么使用,我只是想简单的用进程调用一个程序。
  • 使用putty.exe登录远程linux系统,会自动退出.请问产生的原因.
  • 请问一般8029在linux,unix上可以使用吗
  • 请问哪里有grub的详细使用教程
  • 请问有在linux下使用的pqmagic吗?
  • 请问怎样在LINUX下面使用COMBAO刻录哦?
  • 请问可以在一个Servlet里使用多线程和SOCKET吗?
  • 请问那位大侠使用过nohup命令,给我一点资料好吗?
  • 请问对于初学者应该使用哪种版本的linux比较好?
  • 请问有谁使用过intel提供的多线程函数?
  • 请问Tomcat下使用javabean,类文件放在哪个目录下,急!!!
  • weblogic可不可以当作jndi服务器使用?如果可以,请问如何管理?
  • 请问怎样能得到rs的记录集 iis7站长之家
  • 请问:如何在java中的jtree控件中使用checkbox
  • 请问在Linux下怎样使用OICQ
  • 请问:我知道路由器的telnet密码,但忘记了enable 密码,请问如何是好?
  • 请问最新的reahat9.0是基于什么核心的?2.4?2.6?请问那里能下载?
  • 请问:请问哪里有关于linux基本操作命令讲解的资料下载,最好是幻灯片格式的.
  • 请问,我试图用#admintool&图形工具命令来安装sun workshop5.0,为什么进入的却是用户管理界面?请问具体该如何在solaris下安装应用软件
  • 请问在Redhat 9里,我从登录就是图形介面,请问如何在图形介面内进入命令行方式呢,谢谢
  • 请问玩过SOLARIS的高手门,在不正常关机后,就不能启动到windows公用桌面了,只能在命令提示模式下了,请问怎么解决这个问题啊?急~!~!
  • 请问:我在redhat下装了bochs-2.2.1-1.rpm,.装了后,想设置一下,但找不到bochsrc.fda.bxrc,请问这个文件在哪个曰录下啊。
  • 请问:在配置Qt时,很多文档都说在.profile,.login里加东西,但是我好像没有发现有这两个文件上,请问这些文件在哪个目录下啊
  • 请问:在GCC里的C程序里的变量的声明是不是只能在前面,而且相同类型的变量的声明只能放在一起?如果不是,请问怎么样可以解决这个问题.
  • 请问各位大虾,小弟今天开始学jsp了,这学期我们有java课,所以已经下载了jdk(好象是1.2),请问我的98环境怎么配置jsp环境呀?我的jdk可以运行.java程序,别的我就不知道了....谢谢!
  • 主机是WIN2000,我用的是LUNIX,请问是否可以共享上网? 如果可以请问如何设置? 500分答谢,龟儿食言!


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3