#include #include int main(int argc, char **argv) { if (argc > 2) return 1; DIR *d; if (argc == 1) { d = opendir("."); if (!d) { fprintf(stderr, "simple_ls: .: No such file or directory\n"); return 1; } } else { d = opendir(argv[1]); if (!d) { fprintf(stderr, "simple_ls: %s: No such file or directory\n", argv[1]); return 1; } } struct dirent *dir; while ((dir = readdir(d))) { if (dir->d_name[0] != '.') printf("%s\n", dir->d_name); } if (closedir(d)) return 1; return 0; }