我试图在C语言的
Linux系统上获取OS版本,硬盘空间,可用磁盘空间和已安装RAM等信息.我知道我可以使用system()运行不同的Linux命令并捕获它们的输出(这是我目前正在做的)但我想知道是否有更好的方法?我可以使用C标准库中的某些东西从操作系统获取信息吗?
解决方法
如果您通过系统使用* nix命令.
然后,man滚动到手册页的底部,它通常会显示相关的C系统调用.
Example: man uname: SEE ALSO uname(2),getdomainname(2),gethostname(2) Explanation of numbers: (1): User UNIX Command (2): Unix and C system calls (3): C Library routines (4): Special file names (5): File formats (6): (7): (8): System admin commands
所以如果你使用的是系统(“uname”).在手册页中,您可以看到还有一个uname C系统调用(uname(2)).因此,您现在可以执行“man 2 uname”以获取有关如何使用C系统调用uname的信息.