设计实现ls功能

#include <stdio.h>
#include <dirent.h>
#include <sys/types.h>

void myls(char []);

int main(int ac,char * av[]){
    if (ac == 1) {
        myls(".");
    } else {
        while (--ac) {
            ++av;
            myls(*av);
        }
    }
    return 0;
}
void myls(char dirname[]){
    DIR *dir_ptr;
    struct dirent  *direntp;
    if ((dir_ptr = opendir(dirname)) == NULL) {
        fprintf(stderr, "ls1 cannot open %s\n",dirname);
    } else {
        while ((direntp = readdir(dir_ptr)) != NULL)
            printf("%s   ", direntp->d_name);
        printf("\n");
        closedir(dir_ptr);
    }
}

实现功能

打开目录文件
针对目录文件
读取目录条目
显示文件名
关闭文件目录文件

运行截图

 

posted @ 2020-11-11 10:12  维卿  阅读(165)  评论(0编辑  收藏  举报