一、获取磁盘大小(给入的是文件夹绝对路径);
check_disk_available(QString path)
{
    struct statfs diskinfo;
    unsigned long long size;
    unsigned long long blocksize;
    statfs(path.toUtf8().data(),&diskinfo);
    blocksize=diskinfo.f_bsize;
    size=diskinfo.f_bavail*blocksize;
    size=size>>20;
    if(size<2000)
    {
        return -1;
    }
    return 1;
}
statfs定义:
struct statfs {
long f_type; /* 文件系统类型 */
long f_bsize; /* 经过优化的传输块大小,单位B*/
long f_blocks; /* 文件系统数据块总数 */
long f_bfree; /* 可用块数 */
long f_bavail; /* 非超级用户可获取的块数 */
long f_files; /* 文件结点总数 */
long f_ffree; /* 可用文件结点数 */
fsid_t f_fsid; /* 文件系统标识 */
long f_namelen; /* 文件名的最大长度 */
};
 
二、文件大小获取:
  int getfilesize(char *filename)

{

int filesize=0;
struct stat mystat;
stat(filename,&mystat);
filesize=mystat.st_size;

return filesize;

}

  1. struct stat
  2. {
  3. dev_t       st_dev;     /* ID of device containing file -文件所在设备的ID*/
  4. ino_t       st_ino;     /* inode number -inode节点号*/
  5. mode_t      st_mode;    /* protection -保护模式?*/
  6. nlink_t     st_nlink;   /* number of hard links -链向此文件的连接数(硬连接)*/
  7. uid_t       st_uid;     /* user ID of owner -user id*/
  8. gid_t       st_gid;     /* group ID of owner - group id*/
  9. dev_t       st_rdev;    /* device ID (if special file) -设备号,针对设备文件*/
  10. off_t       st_size;    /* total size, in bytes -文件大小,字节为单位*/
  11. blksize_t   st_blksize; /* blocksize for filesystem I/O -系统块的大小*/
  12. blkcnt_t    st_blocks;  /* number of blocks allocated -文件所占块数*/
  13. time_t      st_atime;   /* time of last access -最近存取时间*/
  14. time_t      st_mtime;   /* time of last modification -最近修改时间*/
  15. time_t      st_ctime;   /* time of last status change - */
  16. };
 
 

linux磁盘大小获取和文件大小获取的更多相关文章

  1. Linux磁盘分区UUID的获取及其UUID的作用

    注:UUID-Universally Unique IDentifiers全局唯一标识符 一.Linux磁盘分区UUID的获取方法 1.[san@localhost ~]$ ls -l /dev/di ...

  2. 获取系统相关信息 (CPU使用率 内存使用率 系统磁盘大小)

    引言 在软件开个过程中,对于软件的稳定性和使用率也是我们需要关注的 .  使用sigar来监控,简单方便!  使用说明:下载sigar jar及配合sigar的dll文件来用,需要将dll文件放到JD ...

  3. .net 获取CPU频率 内存 磁盘大小,域名 端口 虚拟目录等

    CPU个数: @Environment.GetEnvironmentVariable("NUMBER_OF_PROCESSORS") CPU类型: @Environment.Get ...

  4. Linux 磁盘空间大小统计du命令常见使用方法

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/hongweigg/article/details/37692057 在 Linux下,能够对某个文件 ...

  5. Linux查看磁盘占用率及文件大小

    查看磁盘占用率: 在 df 命令中使用-h选项,以人类易读的格式输出(例如,5K,500M 及 5G) linux中df命令的功能是用来检查linux服务器的文件系统的磁盘空间占用情况.可以利用该命令 ...

  6. 调整Linux磁盘分区的大小的方法

      昨天数据入库时,一直报错,说磁盘满了,,df -h    一看,发现/目录下只有50G空间,已使用49G:我的程序和dbss都安装在/目录下,ftp到的数据放在/data下的一个子目录下,分解完的 ...

  7. php获取远程文件大小

    获取本地文件大小filesize()就可以了,但是如何获取远程文件的大小呢? 这里介绍三个方法来获取远程文件的大小. 方法1:get_headers <?php get_headers($url ...

  8. Linux - 查看文件、文件夹、磁盘大小命令

    1. ls -lsh 2. du -sh du == disk usage (磁盘使用量,占用的磁盘空间) 一个文件占用的磁盘空间和一个文件的大小是两码事情.占用空间取决于文件系统的块(block)的 ...

  9. Linux磁盘分区、挂载、查看文件大小

    快速查看系统文件大小命令 du -ah --max-depth=1 后面可以添加文件目录 ,如果不添加默认当前目录. 下面进入正题~~ 磁盘分区.挂载 引言: ①.分区的方式 a)mbr分区: 最多支 ...

随机推荐

  1. iOS开发常用第三库

    字典转模型 1.(MJExtension) https://github.com/CoderMJLee/MJExtension 2.(YYModel) https://github.com/ibire ...

  2. Codeforces 1045E. Ancient civilizations 构造 计算几何 凸包

    原文链接https://www.cnblogs.com/zhouzhendong/p/CF1045E.html 4K码量构造题,CF血腥残暴! 题解 首先,如果所有点颜色相同,那么直接连个菊花搞定. ...

  3. 原生HttpClient详细使用示例

    一.HttpClient类 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; ...

  4. pyqt pyside 窗口自动调整大小

    pyqt pyside 窗口自动调整大小 在QTimer中一直调整 def initTimer(self): self.resizeTimer = QtCore.QTimer(self) self.r ...

  5. vue-cli 构建的项目中 如何使用less

    vue-cli 构建的项目默认是不支持 less 的,需要自己添加. 首选,安装 less 和 less-loader ,在项目目录下运行如下命令 npm install less less-load ...

  6. python接口测试-认识POST请求

    上午和一个大神交流了一下,给我了一点建议:多做笔记,勤复盘:及时记录自己,最好的提升不是来自于别人,而是来自于自身.我觉得挺有道理的,分享出来.共勉 说正事. 今天把post请求的大概内容看了一下.虽 ...

  7. Telsa显卡比较

    1. T4 2. P4/ P40 3. P100 4. V100

  8. Centos6.5升级openssh、OpenSSL和wget

    1.OpenSSL 1.1.查看版本 使用如下命令查看版本: openssl version 1.2.安装gcc依赖 yum -y install gcc gcc-c++ 1.3.安装配置 ./con ...

  9. 2019-2-13TextBox技巧

    清空所有的TextBox文本框 思路:这些TextBox都是在一个窗体上的,这时候我们可以利用一个循环去遍历窗体上所有的TextBox控件.(代码如下) foreach (Control i in C ...

  10. MongoDB 简单操作

    MongoDB操作 之 原生ORM,根本不存在SQL语句,数据之间不存在联系 查看数据库(查看磁盘中的数据库) > show databases; 使用数据库 > use local 创建 ...