如何确定存储文件的文件系统类型?我可能有文件名,或者以后只有一个描述符。
一开始我很乐意使用脚本,但也想知道如何使用来自 C 的系统调用来完成它。
在命令行/脚本上,您可以使用stat
:
$ stat -f -c "%T" someFileOnExt2Ext3
ext2/ext3
$ stat -f -c "%T" someFileOnNFS
nfs
这最终会导致statfs(2)系统调用:
int statfs(const char *path, struct statfs *buf);
函数 statfs() 返回有关已安装文件系统的信息。path 是挂载文件系统中任何文件的路径名,buf 是指向 statfs 结构的指针。