我们需要打开一个文件来获取它的属性吗?

我们需要打开一个文件来获取它的属性吗?
int stat(const char *filename, struct stat *buf);
int fstat(int fd, struct stat *buf);

我们需要打开一个文件来获取它的属性吗?

要访问文件的属性,我们是否需要访问文件描述符表、文件表和/或 vnode 表中的文件条目?

stat()通过首先调用open()获取给定文件的文件描述符,然后fstat()在文件描述符上调用或等效的方法来实现的吗?

谢谢。

答案1

不,您不需要打开它。

系统stat()调用在任何地方都不会涉及文件描述符。

事实上,您可能能够访问stat()某些您无权访问的文件open()

相关内容