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;

}

相关推荐
生活很暖很治愈7 分钟前
Linux——UDP编程&通信
linux·服务器·c++·ubuntu
共享家952712 分钟前
C++ string 类从原理到实战
开发语言·c++
库奇噜啦呼16 分钟前
【iOS】Effective Objective-C第一章
开发语言·ios·objective-c
不会写DN28 分钟前
Go 语言并发编程的 “工具箱”
开发语言·后端·golang
叶宇燚34 分钟前
Java整理--数据结构篇
java·开发语言·数据结构
Mr_WangAndy40 分钟前
C++数据结构与算法_大数据处理
c++·大数据查重·大数据求topk
晚枫歌F40 分钟前
btree B树实现key-value存储
开发语言·数据结构
foundbug99943 分钟前
多智能体三维编队飞行控制MATLAB实现
开发语言·matlab
炸膛坦客1 小时前
单片机/C语言八股:(七)C 程序运行时内存布局的动态变化
c语言·开发语言
ZCollapsar.1 小时前
C++从入门到入土 (5):.C/C++内存管理
c语言·c++·学习