c++ - 如何在 Linux/Unix 上获取硬件信息?

标签 c++ c linux unix system

我如何从 Linux/Unix 机器上获取硬件信息。 是否有一套 API?

我正在尝试获取如下信息:

  • 操作系统名称。
  • 操作系统版本。
  • 可用的网络适配器。
  • 有关网络适配器的信息。
  • 所有已安装的软件。

我正在寻找一个应用程序来收集这些信息并以一种很好的格式显示它。 我使用了与 Mac OS X 的“system_profile”命令行工具类似的东西。我 想知道类似的东西是否也适用于 Linux。

最佳答案

如果您需要一个简单的答案,请使用:

  • cat/proc/cpuinfo
  • cat/proc/meminfo
  • lspci
  • lsusb

并从这些命令的输出中获取您需要的任何信息。 (注意:如果您正在编写 shell 脚本,cut 命令可能是您的 friend 。)

如果您需要更多详细信息,请添加 -v 开关以从 lspcilsusb 命令获得详细输出。

如果您正在寻找的是功能更完整的 API,那么请使用 HAL,尽管这对于您尝试构建的内容来说可能有点矫枉过正。

关于c++ - 如何在 Linux/Unix 上获取硬件信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1727608/

相关文章:

c++ - (C++/winsock) 封装替代结构

c++ - 如何防止基于 ASIO 的服务器终止

c - 将地址分配给 C 中定义的函数指针

c - 逗号运算符 , 有什么作用?

C:在超时的阻塞套接字上等待 n 个字符

C - 直接从终端扫描值

linux - netstat -p 标志不起作用

c++ - 为什么new第一次会多分配1040字节?

c++ - 无法在 Qt 中读取 utf-8 文件

linux - 如何列出目录中的所有文件并将结果导出到文本文件?