linux获取磁盘信息

/// <summary>

/// 获取linux磁盘信息

/// </summary>

/// <returns></returns>

std::string ZmApiDeviceInfo::GetLinuxStorage()

{

struct statvfs vfs;

const char* path = "/"; // 要检查的文件系统路径

if (statvfs(path, &vfs) != 0) {

std::cerr << "Error getting file system status." << std::endl;

return "";

}

unsigned long long totalSpace = vfs.f_frsize * vfs.f_blocks; // 总磁盘空间

unsigned long long freeSpace = vfs.f_frsize * vfs.f_bfree; // 空闲磁盘空间

unsigned long long usedSpace = totalSpace - freeSpace; // 已用磁盘空间

double usagePercentage = (double)usedSpace / totalSpace * 100.0;

/*std::cout << "Total Space: " << totalSpace << " bytes" << std::endl;

std::cout << "Used Space: " << usedSpace << " bytes" << std::endl;

std::cout << "Free Space: " << freeSpace << " bytes" << std::endl;

std::cout << "Usage Percentage: " << usagePercentage << "%" << std::endl;*/

char strPercent[100]{ 0 };

sprintf(strPercent, "%.2f%", usagePercentage);

return strPercent;

}

相关推荐
黄昏晓x1 天前
C++----异常
android·java·c++
Highcharts.js1 天前
如何根据派生数据创建钟形曲线图表?highcharts正态分布曲线使用指南:从创建到设置一文搞定
开发语言·javascript·开发文档·正态分布·highcharts·图表类型·钟形图
宇木灵1 天前
C语言基础-九、动态内存分配
c语言·开发语言·学习·算法
楼田莉子1 天前
Linux网络学习:网络的基础概念
linux·运维·服务器·网络·c++·学习
ShiJiuD6668889991 天前
Java 异常 File
java·开发语言
lxl13071 天前
C++算法(5)位运算
java·c++·算法
tankeven1 天前
HJ96 表示数字
c++·算法
lxl13071 天前
C++算法(4)前缀和
开发语言·c++·算法
froginwe111 天前
Java 条件语句
开发语言