Linux 中的“目录”和“文件夹”——区别与联系
大家好,我是小智!
在日常使用中,“目录(Directory)”和“文件夹(Folder)”这两个术语常被交替使用。对于熟悉图形界面操作的用户来说,“文件夹”更直观;而对于命令行和系统底层打交道的开发者和运维人员,则习惯使用“目录”一词。本篇博文将从概念、实现原理、使用场景以及比喻三个角度,带你全面理解二者的区别与联系。
一、术语定义
-
目录(Directory)
- 操作系统中文件系统的核心概念之一。
- 本质上是一个特殊的文件,内部保存了若干条 “名称 ↔ inode” 的映射关系。
- 用于组织和查找文件与子目录。
-
文件夹(Folder)
- 图形用户界面(GUI)中对目录的可视化表现。
- 在文件管理器(如 GNOME Files、Dolphin、Thunar)里以“文件夹图标”展示,帮助用户直观地“点击”与“打开”目录。
二、底层实现
1. inode:文件和目录的元数据中心
- 每个文件或目录在文件系统中都有一个唯一的 inode(索引节点)编号。
- inode 包含:
- 文件类型(普通文件、目录、符号链接等)
- 文件权限、拥有者(UID/GID)
- 文件大小、时间戳(创建、修改、访问)
- 数据块指针(直接、间接…)
2. 目录条目:名称到 inode 的映射表
-
目录自身也是一个文件,里面的“内容”即若干目录条目(dentry)。
-
当你在命令行执行
ls /home/user/Documents时,系统就是读取该目录文件,遍历每条 “名字 ↔ inode” 记录。
三、使用场景对比
| 场景 | 术语 | 示例命令 / 操作 |
|---|---|---|
| 命令行 (CLI) | 目录 | bash<br>$ cd /var/log<br>$ mkdir backup<br>$ ls -l |
| GUI | 文件夹 | - 双击“文件夹”图标 - 右键新建“文件夹” |
要点:
- GUI 操作实质上触发了相应的目录(directory)API 调用;
- 无论是
mkdir还是“新建文件夹”,都在文件系统中创建了一个新的目录 inode。
四、总结
-
目录(Directory):
- 系统层面的组织单位,是文件系统内部的核心结构。
- 在命令行、脚本和技术文档中使用。
-
文件夹(Folder):
- 图形界面中的视觉概念,帮助用户以“看得见的容器”方式进行文件管理。
- 与目录本质相同,只是展现形式不同。
在 Linux/UNIX 世界里,只有“目录”这种概念;“文件夹”只是给用户的“锦上添花”——让操作更直观。

浙公网安备 33010602011771号