linux下获取文件夹下子文件列表

本文介绍如何在Linux环境下,根据开始时间戳和持续时间,获取文件夹下被修改过的文件列表。涉及的知识点包括:遍历目录、struct dirent和struct stat结构体的使用,以及对vector容器的排序操作。测试代码编译运行后,能够列出指定目录中在给定时间范围内的文件。
摘要由CSDN通过智能技术生成

linux下获取文件夹下子文件列表

预置条件:

1、只遍历当前目前,不遍历当前目录的子文件夹
2、根据用户提供的开始时间戳以及持续时间,返回在这个时间区间内被修改过的文件列表。

相关知识:

1、struct dirent结构体。存储目录中的文件信息(文件名、扩展名等等)。

include <dirent.h>
struct dirent
{
   long d_ino; /* inode number 索引节点号 */
   off_t d_off; /* offset to this dirent 在目录文件中的偏移 */
   unsigned short d_reclen; /* length of this d_name 文件名长 */
   unsigned char d_type; /* the type of d_name 文件类型 */
   char d_name [NAME_MAX+1]; /* file name (null-terminated) 文件名,最长255字符 */
}

2、struct stat 结构体。这个结构体是用来描述一个linux系统文件系统中的文件属性的结构。

struct stat
{
    dev_t       st_dev;     /* ID of device containing file -文件所在设备的ID*/
    ino_t       st_ino;     /* inode number -inode节点号*/
    mode_t      st_mode;    /* protection -保护模式?*/
    nlink_t     st_nlink;   /* number of hard links -链向此文件的连接数(硬连接)*/
    uid_t       st_uid;     /* user ID of owner -user id*/
    gid_t       st_gid;     /* group ID of owner - group id*/
    dev_t       st_rdev;    /* device ID (if special file) -设备号,针对设备文件*/
    off_t       st_size;    /* total size, in bytes -文件大小,字节为单位*/
    blksize_t   st_blksize; /* blocksize for filesystem I/O -系统块的大小*/
    blkcnt_t    st_bloc
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值