fileno
获得一个文件流指针中的文件描述符
FILE *fp -> int fd
stream 文件流指针
返回值:
成功 返回文件描述符
失败 返回-1
关文件一般关封装度高的
fdopen
将文件描述符转化为文件流指针
int fd -> FILE *fp
fd : 已经打开的文件描述符
mode "r" "r+" "w" "w+" "a" "a+"
返回值:
成功 返回文件流指针
失败 返回NULL
目录(dir)
1、打开目标目录
2、读取目录
3、关闭目录
opendir
打开一个目录获得一个目录流指针
name 目录名
返回值:
成功 返回目录流指针
失败 返回NULL
readdir
从目录流中读取文件信息并将保存信息的结构体地址返回
结构体成员要找哪个函数使用了这个结构体,man 这个函数
dirp 目录流指针
返回值:
包含文件信息的结构体
出错或者读到目录流末尾返回NULL
对于任何目录,都会有.(本层目录) 和..(上层目录)
closedir
关闭之前已经打开的目录流对象
opendir 返回结果中目录流对象
返回值:
成功 0
失败 -1
ls:
chdir
改变当前程序的工作路径(cd)
path 改变到的路径
返回值:
成功 返回0
失败 返回-1
getcwd
获得当前工作路径(pwd)
buf 保存工作路径空间的首地址
size 保存路径空间的长度
返回值:
成功 返回包含路径空间的字符串首地址
失败 返回NULL
mkdir
创建一个目录
pathname 路径
mode 777
(umask 新建文件或目录与其相减(mode & ~ umask(0002)))
目录如果没有x,无法进去,所以x权限必须
返回值
成功 返回0
失败 返回-1
rmdir
删除一个空目录文件(必须是空目录)
pathname 目录文件的名字
返回值
成功 返回0
失败 返回-1
stat
获得文件的属性
path 文件的路径(文件名)
buf 属性存放空间的首地址
mode -> man 7 inodexbgsrnh
返回值
成功 返回0
失败 返回-1
实现ll功能:
-----------------
嵌入式学习第二十一天,今天学习了关于目录的操作,比如打开,读取,关闭目录,还有目录的ls,ll以及stat等的相关函数,文件目录mode的编写有些繁琐,需要记住其中的注意事项。后面每天都会涉及很多新函数,要继续加油呀!