当前位置 博文首页 > C语言实现的ls命令源码分享

    C语言实现的ls命令源码分享

    作者:乡村运维 时间:2021-05-10 18:18

    在之前的一些看书或者学习中,一直有一种感觉有问题的态度,那就是认为看懂了,但是不动手,感觉这样看书的效果不是很大。ls命令估计是我们在linux/unix里面用的最多的一个命令了,我们就用c来简单的实现一下ls命令。

    //
    // ls.c
    // apue
    //
    // Created by chenqing on 13-8-22.
    // Copyright (c) 2013年 chenqing. All rights reserved.
    //
     
    #include "/usr/include/apue.h"
    #include "dirent.h"
     
    int main(int argc,char *argv[])
    {
     DIR *dp ; //创建一个DIR结构的指针
        //更多信息参考http://www.gnu.org/software/libc/manual/html_node/Opening-a-Directory.html
     struct dirent *dirp;
     if (argc != 2) {
      err_sys("需要两个参数"); //err_sys 是在error.c中定义的一个函数
     }
      
     if ((dp = opendir(argv[1])) == NULL) {
      err_quit("读取目录出错了!");
     }
     while ((dirp = readdir(dp)) != NULL) {
      printf("%s\n",dirp->d_name);
     }
      
     closedir(dp);
     exit(0);
     
    }

    js