自己写了一个 判断文件夹是否为空的小代码
//文件夹操作相关的函数的帮助
$: man 3 readdir
#include <stdio.h> #include <sys/types.h> #include <sys/stat.h> #include <unistd.h> #include <dirent.h> int isdirempty(char *dirname) { /* 打开要进行匹配的文件目录 */ DIR *dir = opendir(dirname); struct dirent *ent; if (dir == NULL) { perror("seekkey.c-98-opendir"); return -1; } while (1) { ent = readdir (dir); if (ent <= 0) { break; } if ((strcmp(".", ent->d_name)==0) || (strcmp("..", ent->d_name)==0)) { continue; } /*判断是否有目录和文件*/ if ((ent->d_type == DT_DIR) || (ent->d_type == DT_REG)) { return -1; } } return 0; } int main() { char *dirname = "bb"; int res = isdirempty(dirname); if (res == 0) { printf ("是空 "); } else { printf ("不是空 "); } }