问题说明了一切。我想要C函数调用,以返回列表中已挂载的文件系统以及相关信息,例如文件系统类型。

最佳答案

您正在寻找getmntent和其他*mntent函数系列。请参阅manpage以获取更多引用。

代码示例取自here,并稍作修改。 /etc/mtab是一个文件,其中包含已安装文件系统的列表。

mounts = setmntent("/etc/mtab", "r");
while ( (ent = getmntent(mounts)) != NULL ){
    if (strcmp(ent->mnt_type, "iso9660") == 0)
       /* copy mount point to output */
       strcpy(retval[cd_count - 1], ent->mnt_dir);
    } /* if */
} /* while */
endmntent(mounts);

不幸的是,这些功能不在POSIX中。但是它们已在glibc中进行了联机帮助和实现,因此我认为它们是比/proc解析更好的选择。

关于linux - 在Linux上相当于getfsstat()?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1934678/

10-09 05:57