目录也是linux系统中的一种文件类型,内容是该目录中文件名和文件索引节点编号的对应关系。
不能对目录文件进行写操作。当用户在一个目录下执行了创建/删除文件或目录的操作,系统会对目录文件的内容进行修改,而用户不能自己修改目录文件。
删除目录项用系统调用unlink,告知OS ,用户将会删除这个目录,OS再把目录文件表的某行给删除掉。
目录与目录文件是一组截然不同的概念。目录是目录文件中的一个表项。

image.png
image.pngimage.png

6.1 打开目录

image.png

6.2 读目录

image.png
从dir指向的目录文件中读取一个目录项,返回一个指向该目录项的指针。
目录文件中存放的内容主要是该目录下每一个文件(或子目录的)文件名与其inode的对应关系。

6.3 关闭目录

image.png

6.4 改变当前目录

image.png

6.5 删除目录

image.png

6.6 创建目录

image.png

6.7 目录指针定位

image.png