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 strPercent100{ 0 };

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

return strPercent;

}

相关推荐
朝朝辞暮i4 小时前
C++ 第 23 课:class —— 开始真正进入面向对象
开发语言·c++·算法
小师兄吃牛肉5 小时前
C语言篇:宏
c语言·开发语言
郑同学的笔记5 小时前
【c++随笔28】strcmp 和 memcmp对比
开发语言·c++
随意起个昵称5 小时前
【背包dp】输出方案路径
c++·动态规划
言乐66 小时前
Python根据无法识别搜索词找出可能输入内容模型
开发语言·python·django·virtualenv·pygame
weixin_307779136 小时前
有限产能智能排产与动态重排智能体:从需求解构到技术实现
开发语言·人工智能·算法·架构
kakakahahahaha6 小时前
Windows C盘临时文件清理:%temp%、Windows Temp、Prefetch、Windows.old与hiberfil.sys处理指南
c语言·开发语言·windows
朝朝辞暮i6 小时前
C++ 第 27 课:智能指针 shared_ptr
开发语言·c++·算法
by209996 小时前
学会使用std::string类,并理解其内部是如何管理字符串的详细阐述(上)
c++·笔记·字符串·类和对象·string
沙漠之主6 小时前
C++编程教学设计资料:从入门到实战的完整课程方案
java·前端·c++