3

如何确定存储文件的文件系统类型?我可能有文件名,或者以后只有一个描述符。

一开始我很乐意使用脚本,但也想知道如何使用来自 C 的系统调用来完成它。

4

1 回答 1

11

在命令行/脚本上,您可以使用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 结构的指针。

于 2013-02-13T09:08:23.610 回答