有没有一种方法可以在C语言中判断文件是在本地磁盘还是NFS上?这段代码应该跨越各种Linux发行版,并且不应该依赖于系统调用(例如stat-f)。
您想要从<sys/vfs.h>
使用statfs
。
这是如何使用它的:int statfs(const char *path, struct statfs *buf); struct statfs { __SWORD_TYPE f_type; /* type of file system (see below) */
struct statfs s;
if (statfs("/etc", &s))
perror("statfs");
switch (s->f_type) {
case EXT2_SUPER_MAGIC:
break;
case EXT3_SUPER_MAGIC:
break;
default:
break;
}
另外:
system()
函数的调用... - user405725