zoukankan      html  css  js  c++  java
  • Linux系统编程_1_文件夹读取(实现简单ls命令)

    闲来无事。随便写写,实现简单的ls命令:


    |  1 #include <stdio.h>
    |  2 #include <stdlib.h>
    |  3 #include <dirent.h>
    |  4 #include <string.h>
    |  5
    |  6 int main(int argc, char **argv)
    |  7 {
    |  8     DIR *pDir;
    |  9     struct dirent *stDir;
    | 10     int flag = 0;
    | 11
    | 12     if(argc > 2)
    | 13     {
    | 14         printf("Usage: ./ls or ./ls xxx
    ");
    | 15         exit(-1);
    | 16     }
    | 17     if(argc == 1)
    | 18     {
    | 19         flag = 1;
    | 20         if((pDir = opendir(".")) == NULL)
    | 21         {
    | 22             printf("open dir error!
    ");
    | 23             exit(-1);
    | 24         }
    | 25     }
    | 26
    | 27     if(!flag)
    | 28     {
    | 29         if((pDir = opendir(argv[1])) == NULL)
    | 30         {
    | 31             printf("open dir error!
    ");
    | 32             exit(-1);
    | 33         }
    | 34     }
    | 35
    | 36     while((stDir = readdir(pDir)) != NULL)
    | 37     {
    | 38         if(strcmp(stDir->d_name, ".") == 0 || strcmp(stDir->d_name, "..") == 0)
    | 39             continue;
    | 40         printf("%s
    ", stDir->d_name);
    | 41     }
    | 42
    | 43     closedir(pDir);
    | 44
    | 45     return 0;
    | 46 }

    功能:

    ./ls     ——列出当前文件夹下文件

    ./ls xxx——列出指定文件夹下文件

    忽略.与..两个文件夹。


  • 相关阅读:
    Java编译器API简介
    liblinear和libsvm区别
    spark和hadoop比较
    maxout激活函数
    FTRL算法
    NLP里面好的学习资料
    阿里妈妈MLR模型(论文)
    FM的推导原理--推荐系统
    GBDT+LR simple例子
    深度学习最全优化方法---来源于知乎
  • 原文地址:https://www.cnblogs.com/yfceshi/p/6820663.html
Copyright © 2011-2022 走看看