如何从Linux中的/ proc / cpuinfo获取型号名称?

时间:2019-02-20 08:55:50

标签: c linux linux-kernel kernel

我正在C语言中工作,试图从/proc文件中获取特定信息。 我知道在Linux上执行以下操作时会得到型号名称。

cd /proc
cat cpuinfo | grep 'model name'

但是,如果我尝试在C语言中执行此操作,则会导致core dumped

thisfile = fopen("/proc/cpuinfo | grep 'model name' ", "r");

打开文件时如何获取型号名称?

1 个答案:

答案 0 :(得分:3)

fopen("/proc/cpuinfo | grep 'model name' ", "r");将返回NULL指针,因为文件/proc/cpuinfo | grep 'model name'当然不存在

fopen 允许打开文件,而不执行命令

使用 popen

FILE * fp = popen("grep 'model name'  /proc/cpuinfo", "r");

if (fp != NULL) {
  ...read in 
  pclose(fp);
}