#include #include #include #include void do_stat(const char* name) { struct stat sb; stat(name, &sb); printf("[stat]\n"); printf("path : %s\n", name); printf("path->st_ino : %d\n", sb.st_ino); printf("\n"); } void do_stat_dir(const char* parent, const char* child) { DIR * dir = opendir(parent); struct dirent * pd = readdir(dir); off_t loc = 0; do { if (0 == strcmp(pd->d_name, child)) { printf("[opendir]\n"); printf("parent : %s\n", parent); printf("child : %s\n", pd->d_name); printf("child->d_ino : %d\n", pd->d_ino); printf("\n"); } seekdir(dir, ++loc); pd = readdir(dir); } while (pd != NULL); } int main(int argc, char** argv) { do_stat("/tmp"); do_stat_dir("/", "tmp"); return 0; }