В чем разница между каталогом и папкой?

большинство людей используют термины "папка" и "каталог" как синонимы. С точки зрения программиста, есть ли разница, и если да, то что это? Зависит ли это от ОС или существует широкий общий консенсус? этой по крайней мере, предполагает, что есть разница.

6 ответов


проверьте раздел "метафора папки" в Википедия

в нем говорится:

"строго говоря, существует разница между каталогом, который является концепцией файловой системы, и метафорой графического интерфейса пользователя, которая используется для его представления (папка). Например, Microsoft Windows использует концепцию специальных папок, чтобы представить содержимое компьютера пользователю достаточно последовательно, что освобождает пользователя от необходимости иметь дело с абсолютные пути к каталогам, которые могут варьироваться между версиями Windows и между отдельными установками.

Если речь идет о контейнере документов, то термин папка является более подходящим. Термин "каталог" означает способ хранения структурированного списка файлов и папок документов на компьютере. Он сопоставим с телефонным справочником, содержащим списки имен, номеров и адресов и не содержащим собственно документов."


папка не обязательно является физическим каталогом на диске. Это может быть, например, папка "принтеры" или "панель управления" в Windows.

Раймонд Чен объясняет:

Windows 95 представила Проводник Windows а вместе с ним и папку с термином. Каковы отношения между папки и каталоги?

некоторые люди считают, что Windows 95 переименованные каталоги в папки, но на самом деле это больше, чем что.

Проводник Windows позволяет просматривать папки, которые являются контейнерами в пространство имен оболочки. Каталоги являются одним тип папки, а именно папки, которые соответствуют местоположениям файловой системы. Существуют и другие типы папок, такие как как пульт управления или сеть Район или принтеры. Эти другие типы папок представляют объекты в пространство имен shell, которое не соответствуют файлам. В общем использовании, термин виртуальная папка был применяется для обозначения папки, которые не каталоги. Другими словами, мы имейте эту диаграмму Эйлера:

(виртуальные папки = папки - Каталоги)

В общем, код, который манипулирует пространство имен shell должно работать папки и элементы, а не каталоги и файлы, чтобы не привязывать себя к определенный носитель информации. Для пример кода, который ограничивается файлы не смогут перейти в Zip-файл, так как содержимое zip файл подвергаются в виде виртуальная папка.


Цитируя Альваро Г. Викарио:

в большинстве случаев они являются равнозначными. Каталог-это классический термин, используемый с ранних времен файловых систем, в то время как папка-это своего рода дружественное имя, которое может показаться более знакомым пользователям Windows.

основное отличие заключается в том, что папка-это логическое понятие, которое не обязательно сопоставляется с физическим каталогом. Каталог-это объект файловой системы. Папка-это объект GUI. Википедия объясняет это так::

папка name, представляющая аналогию в папку файлов, используемую в офисах, и использованный первоначально Apple Lisa, используется практически во всех современных операционных рабочих сред систем. Папки часто изображаются с иконами, которые визуально напоминать физический файл папки.

строго говоря, есть разница между каталогом, который является концепцией файловой системы, а графический пользовательский интерфейс метафора используется для его представления (папка). Например, Microsoft Windows использует концепция специальных папок для справки представить содержимое компьютера для пользователя довольно последовательным способом что освобождает пользователя от необходимости работа с абсолютными путями каталогов, что может поменять между версиями Windows и между отдельными промышленные установки.

Если имеется в виду контейнер документы, папка термина больше соответствующий. Срок каталог указывает к пути структурированный список файлы и папки документов сохраняются на компьютере. Это сравнимо с телефонный справочник, содержащий списки имен, номеров и адресов и не содержит фактического сами документы.


  • каталог понятие файловой системы. В GUI каталог представляет как папку.
  • Пример 1: системы Unix,/usr/bin/ обычно называется каталогом при просмотре в консоли командной строки, но при доступе через графический файловый менеджер, пользователи могут иногда называть его папкой.
  • Пример 2: ОС Windows использует как каталог(in CUI like mkdir, cd) и папку(в GUI).

каталог: каталог имен, представляющий аналогию с телефонным справочником. enter image description here


папку: папка name, представляющая аналогию с папкой file, используемой в офисах

enter image description here


аналогия:
Папка - это как комната и каталог: как владелец отеля, который знает все комнаты.

вы хотите определенную папку, вы используете каталог. Если вам нужен конкретный номер, спросите у владельца отеля. источник


ваша ссылка в основном описывает, что отличается на технической основе. В большинстве случаев люди используют их взаимозаменяемо, и то, что они выбирают, в основном основано на том, из какой среды они происходят.

Если вы не делаете кросс-платформенную разработку для приложения, которое будет изменять файлы, вам не нужно знать различия. Как только вы собираетесь работать с несколькими типами файловых систем, вы должны знать их различия.

не ожидала люди, чтобы знать, какой термин использовать, когда. Я считаю эти термины взаимозаменяемыми, поскольку различия известны слишком немногим людям.


имена папок, отображаемых в Проводнике файлов (GUI ранее назывался проводником Windows), не обязательно совпадают с каталогами, которые они представляют. Рассмотрим случай, когда вы пытаетесь программно открыть определенную папку, простой каталог в массовом хранилище, а не виртуальное хранилище. Скажем, это было указано пользователем на основе имени, отображаемого в Проводнике. Это имя могло быть переопределено информацией в альтернативном потоке данных (ADS) в каталоге, а также программа не будет ссылаться на файл по его истинному пути.

в двух примерах, с которыми я столкнулся, мое приложение не может открыть путь, указанный пользователем. Один из этих примеров был связан с OneDrive; я не помню всех обстоятельств другого примера. Во всяком случае, отображаемое имя хранится в объявлениях с именем ms-properties:$DATA.

вы можете использовать CMD.EXE для перечисления объявлений с помощью DIR / R. переименование таких папок с помощью пункта меню Свойства В файле Проводник изменяет содержимое этого объявления, и имя, отображаемое конечному пользователю в Проводнике, является тем, что он ввел. Но эта процедура не переименовывает каталог.