如何判断文件是否是Linux内核编程中的“..”文件?

时间:2014-01-29 18:02:47

标签: linux linux-kernel inode

我正在研究需要跟踪文件(inode)路径的Linux内核编程。

我知道一些函数,如S_ISDIR,S_ISLNK来判断文件是目录还是软链接。但我不知道如何判断文件(inode)是否是“..”文件,即文件是否指向父目录?

1 个答案:

答案 0 :(得分:1)

AFAIK没有名称为“..”的inode。当您访问/ etc / passwd等文件时,会有一个名为路径名查找的进程,它将每个'/','etc'和'passwd'转换为inode。遇到'。'时或'/'或'..'有特殊处理。对于'。'和'/',它是一种无操作,并继续使用相同的inode。对于'..',它返回到它来自的获取父inode。这在Understanding the Linux Kernel第12章虚拟文件系统中非常清楚地解释了。我强烈建议你去看看。另请参阅http://www.mjmwired.net/kernel/Documentation/filesystems/path-lookup.txt