zoukankan      html  css  js  c++  java
  • Understanding Unix/Linux Programming-ls指令练习一

     1 #include <stdio.h>
     2 #include <sys/types.h>
     3 #include <dirent.h>
     4 
     5 void do_ls(char[]);
     6 
     7 main(int ac , char * av[])
     8 {
     9     if(ac == 1 )
    10     {
    11         do_ls(".");
    12     }
    13     else
    14     {
    15         while( -- ac )
    16         {
    17             printf("%s:
    ", * (++ av) );
    18             do_ls(*av);
    19         }
    20     }
    21 }
    22 
    23 void do_ls(char dirname[])
    24 {
    25     DIR * dir_ptr ;
    26     struct dirent * direntp ;
    27 
    28     if(dir_ptr = opendir(dirname) == NULL )
    29     {
    30         fprintf(stderr, "ls1 can not open %s
    ", dirname );
    31     }
    32     else
    33     {
    34         while(direntp = readdir(dir_ptr ) != NULL )
    35         {
    36             printf("%s
    ", direntp -> d_name );
    37         }
    38     }
    39 
    40     closedir(dir_ptr);
    41 }

    ls指令练习:

    • 什么是目录?
      目录是一种特殊的文件,内容包含文件和目录的名字,且目录文件永远不会为空,至少包含.和..两项,分别为当前目录和上一层目录。
    • 系统调用: readdir ,opendir , closedir ;
    • 包含文件: dirent.h——directory entry?
    • 目录名称: dirent ;
  • 相关阅读:
    linux下apache(httpd)安装部署
    基于redis分布式缓存实现(新浪微博案例)
    python--字典
    django(四)
    django(三)
    django(二)
    django(一)
    053(八十)
    053(七十九)
    053(七十八)
  • 原文地址:https://www.cnblogs.com/NJdonghao/p/5252842.html
Copyright © 2011-2022 走看看