Linux操作系统中读取目录文件信息的过程分析

大致流程:

1.添加头文件 dirent.h

声明结构体指针 struct dirent * ptr;

声明一个dir指针 DIR * fd;

2.分析命令行

3.打开目录文件

使用opendir()参数为解析命令行的第二个参数 argv[1] ,返回目录文件指针值赋给 fd

4.输出重定向

使用freopen()参数为解析命令行第三个参数 argv[2]、权限"w+"、文件描述符stdtout

5.开始读取目录文件内容

使用循环 while((ptr=readdir(fd))!=NULL) ,readdir()每次从目录文件中提取一个文件项目,指针前移。直至到文件末尾返回NULL值。ptr指针指向readdir()返回的dirent 结构体,每次函数调用返回的结果不同 dirent中的成员内容不同,其中d_name成员的值为每次读取到的目录中的文件名称。使用周周给的原来mstat.c中的获得文件信息代码将 ptr->d_name做fopen()、fstat()的参数,即可打印出目录中所有文件的信息并存入输出文件中。

6.关闭所有文件及目录文件指针。

(0)

相关推荐

  • Linux(Unix)中误删除的文件恢复方法

    在Linux下大致重新演示一下恢复的过程,恢复的步骤与数据库版本没有太大关系,与操作系统的不同会有所不同。 1. 在数据库open的时候,直接删除users表空间中的数据文件。 复制代码 代码如下: ...

  • Linux操作系统中超级权限控制的应用

    在Linux操作系统中,root的权限是最高的,也被称为超级权限的拥有者。普通用户无法执行的操作,root用户都能完成,所以也被称之为超级管理用户。 在系统中,每个文件、目录和进程,都归属于某一个用户 ...

  • 教你在虚拟机linux操作系统中安装vmtools

    很多用户在测试linux操作系统的时候喜欢用虚拟机,因为虚拟机方便而且可以同时在一台PC机上虚拟出来不同版本的linux操作系统,但是虚拟机和物理机之间的文件传输倒成了个问题,有人说可以使用vmtoo ...

  • 按键精灵中读取excel表格信息方法

    相信很多小伙伴都有在使用按键精灵,那么在其中我们怎么去读取excel表格的信息呢?方法很简单,下面小编就来为大家介绍.具体如下:1. 首先,打开软件按键精灵,在其中新建一个空白脚本.2. 接着,点击页 ...

  • 查找Linux系统中的大文件和大目录方法

    查找大文件 eg:查找当前目录下大于10MB的文件 代码如下: $ find . -type f -size +10000k -exec ls -lh {} ; | awk '{ print $8 & ...

  • Linux操作系统中的七件超厉害的武器

    Linux是一套免费使用和自由传播的类UNIX操作系统,主要用于基于Intel x86系列CPU的计算机上。Linux系统是由全世界各地的成千上万的程序员设计和实现的,其目的是建立不受任何商品化软件的 ...

  • linux系统中怎么查看cpu信息?

    很多时候,我们想知道机器的CPU信息,用的却是linux,又不知道去哪看,这怎么办呢?下面我就教你怎么在linux下查看CPU信息. 1.这里我先介绍一个文件.它就是/proc目录文件,它是一个内存映 ...

  • 在Linux系统中如何把文件拷贝到U盘

    Linux下把所有的都当成文件处理,如果在linux系统下需要拷贝文件,哪么你需要先把U盘挂载到系统中的某一个位置,然后再使用cp命令完成拷贝. 操作方法 01 把U盘插入Linux电脑,确保U盘指示 ...

  • Linux系统中校验下载文件的完整性方法(MD5,SHA1,PGP)

    Linux下的学习开始总是艰难的,但有的时候,却发现Linux下远比Windows的操作来的实在的多——这下载文件的完整性就是其中一件,让本人觉着很爽的一件事情。在编译安装各种软件的时候,总要到各个网 ...