ls命令的简单实现

对其中的几个重要结构体和函数解说一下。

opendir

opendir()用来打开参数 name 指定的目录,并返回 DIR* 形态的
目录流, open()类似,接下来对目录的读取和搜索都要使用此返回值,
成功则返回 DIR* 型态的目录流,打开失败则返回 NULL

readdir()
返回参数 dir 目录流的下个目录进入点。    结构 dirent 定义
如下:
struct dirent

{
    longd_ino;                /* inode number */索引节点号
    off_td_off;               /* offset to this dirent */
在目录文件中的偏移
    unsigned shortd_reclen;    /* length of this d_name */
文件名长
    unsigned chard_type;         /* the type of d_name */
文件类型    
    char d_name[NAME_MAX+1];   /* file name (null-terminated) */
文件名,最长255字符
}

    成功则返回下个目录进入点。有错误发生或读取到目录文件尾则返回 NULL

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值