如何获取目录inode编号,例如/home/laks/file.txt
我需要laks目录的inode数量。任何内置功能已经可用吗?
我想如果我削减了文件名,我可以使用stat()...但是在不删除文件名的情况下,任何其他解决方案也可以。
最佳答案
#include <libgen.h>
#include <sys/stat.h>
...
struct stat statbuf;
if (stat(dirname(argv[1]), &statbuf) != -1)
process_inode_number(statbuf.st_ino);
请注意,
dirname()
可能会修改字符串,因此,如果您仍然需要它,或者它可能是字符串文字(位于只读内存中),请使用strdup()
为dirname()
创建字符串的副本。