为什么在 Linux 中“文件夹”被称为“目录”?
创始人
2024-03-02 09:39:01
0

如果你最开始使用的是 Windows 电脑,你很可能会使用“ 文件夹 folder ”这个术语。

但当你换到 Linux 时,你会发现文件夹通常被称为“ 目录 directory ”。

这可能使一些新的 Linux 用户感到困惑。你应该叫它文件夹还是目录?它们有区别吗?

事情是这样的。如果你愿意,你可以叫它文件夹,如果你喜欢,也可以叫它目录。这没有什么区别。

但是,如果你想知道为什么文件夹在 Linux 中被称为目录,这里有一些解释。

为什么在 Linux 中文件夹被称为目录?

在我解释之前,让我们回顾一下文件夹和目录在现实世界中的用途。

在现实中,文件夹(封套)可以用来保存几个文件(或其他项目)。而目录则可以用来维护项目的索引,这样你就可以找到哪个项目位于哪里。

文件夹和目录的示意

现在,让我们回到目录。这个词甚至在 Linux 存在之前就已经存在了。它来自 UNIX 时代。Linux 继承了 UNIX 的很多东西,这只是其中的一个。

现在让我告诉你一些可能让你吃惊的事情。目录并不是真的把文件放在里面。目录是一个“特殊的文件”,它知道文件在存储中的位置(通过 inode)。

这就说明了为什么它被称为目录。目录用来保存项目的索引,而不用保存项目本身。Linux 和 UNIX 中的目录并不保存它里面的文件。它们只是记录文件位置的信息。

如果你想了解更多关于它的信息,我这篇关于 硬链接 的文章应该可以帮助你。

那么,为什么它被称为文件夹呢?依我看,这是视角的原因。当你在一个图形环境中时,你会将事物可视化。在这里,文件可以像页面一样被可视化,这些文件页面被存储在一个封套(文件夹)中。

当操作系统开始使用图形元素时,我认为一些术语也相应地发生了变化,目录 -> 文件夹就是其中之一。

你应该叫它文件夹还是目录?

这完全取决于你。你可以按你的习惯使用这两个术语。

然而,如果你正在学习 Linux 命令行或经常使用它,使用目录这个术语可能会有一点帮助。

有一些 Linux 命令,如 mkdirrmdir 等,术语 “dir” 给出了一个提示,即这些命令与目录有关。

同样,许多 Linux 命令和 bash 脚本会使用选项 -d 表示目录,-f 表示文件。

甚至终端中的文件属性也会通过在目录前面加上字母 “d” 来区分文件和文件夹(目录)。

拿这个例子来说,我有一个名为 some 的文件和一个名为 something 的文件夹/目录。请注意各种 Linux 命令是如何用 “dir” 或 “d” 来区分文件和目录的。

显示文件和目录操作之间区别的例子

所有这些让我觉得,在使用 Linux 命令时,使用 “目录” 这个术语会有好处。你的潜意识会更容易将 “dir” 和 “d” 与目录联系起来。

再说一次,你想叫它文件夹或目录这完全取决于你。人们会明白你指的是什么。

我刚刚对目录一词的历史渊源做了一些分析,这应该会给你一些提示,为什么人们说 “在 Linux/UNIX 中,所有东西都是一个文件”。

现在我结束了我的胡言乱语,我请你对它进行评论。如果你发现任何技术上的不准确之处,请告诉我。


via: https://itsfoss.com/folder-directory-linux/

作者:Abhishek Prakash 选题:lujun9972 译者:wxy 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

相关内容

微软照片功能或将利用 AI...
微软正在测试一种,让你能够更轻松地筛选照片库中的所有杂乱内容。所有...
2025-09-29 13:14:01
“韭菜免收通行费韭菜薹要收...
近日,在四川乐雅高速符溪收费站外,一名司机与收费站员工因运输的韭菜...
2025-07-12 11:41:09
VS2022配置工程的编译...
VS2022配置工程的编译路径(输出目录和中间目录&...
2025-06-01 19:24:39
【CMake入门教程】CM...
CMake教程专栏文章列表 【实例篇】01.第一个程序【实例篇】0...
2025-06-01 10:01:50
教你如何快速在Linux中...
工作中经常会有查看某个目录下最大的文件的需求,比如在...
2025-06-01 03:02:47
【Unity3D】Unit...
推荐阅读 CSDN主页GitHub开源地址Unity3D插件分享简...
2025-05-31 05:33:05

热门资讯

Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
《Apex 英雄》正式可在 S... 《Apex 英雄》现已通过 Steam Deck 验证,这使其成为支持 Linux 的顶级多人游戏之...
使用 KRAWL 扫描 Kub... 用 KRAWL 脚本来识别 Kubernetes Pod 和容器中的错误。当你使用 Kubernet...
JStock:Linux 上不... 如果你在股票市场做投资,那么你可能非常清楚投资组合管理计划有多重要。管理投资组合的目标是依据你能承受...
从 Yum 更新中排除特定/某... 作为系统更新的一部分,你也许需要在基于 Red Hat 系统中由于应用依赖排除一些软件包。如果是,如...
如何在 Github 上创建一... 学习如何复刻一个仓库,进行更改,并要求维护人员审查并合并它。你知道如何使用 git 了,你有一个 G...
Epic 游戏商店现在可在 S... 现在可以在 Steam Deck 上运行 Epic 游戏商店了,几乎无懈可击! 但是,它是非官方的。...
通过 SaltStack 管理... 我在搜索Puppet的替代品时,偶然间碰到了Salt。我喜欢puppet,但是我又爱上Salt了:)...
如何检查你的 Linux 系统... 不知道在使用哪个初始化系统?以下是方法。每个主流 Linux 发行版(包括 Ubuntu、Fedor...
如何理解Apache 2.0许... 提要:Apache 2.0许可证中的专利许可条款使得开源代码可以安全使用,但它经常被误解。Apach...