stat得到的怎么全是 directory
#include <stdio.h>#include <string.h>#include <stdlib.h>#include <dirent.h>#include <unistd.h>#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>#include <time.h>void print_stat_attr(const char *path){ DIR *dir; struct dirent *ent; struct stat buffer; //char str;// char buf; dir = opendir(path); stat(path, &buffer); while ((ent = readdir(dir)) != NULL) { switch (buffer.st_mode & S_IFMT) { case S_IFBLK: printf("block device"); break; case S_IFCHR: printf("character device"); break; case S_IFDIR: printf("directory"); break; case S_IFIFO: printf("FIFO/pipe"); break; case S_IFLNK: printf("symlink"); break; case S_IFREG: printf("regular file"); break; case S_IFSOCK: printf("socket"); break; default: printf("unknown?"); break; } //printf("%s", str); printf(" %d", (int)buffer.st_ino); printf(" %d", buffer.st_uid); printf(" %d", buffer.st_gid); printf(" %d", (int)buffer.st_size); printf(" %d", (int)buffer.st_mode); printf(" %s\n", ent->d_name); //printf(" %s", (char *)ctime(&buffer.st_mtime)); }}int main(){ print_stat_attr("/home/lxd/workspace/android_4_0/.repo/manifests/.git"); return 0;}