code

디렉토리와 폴더의 차이점은 무엇입니까?

codestyles 2020. 9. 25. 07:54
반응형

디렉토리와 폴더의 차이점은 무엇입니까?


대부분의 사람들은 "폴더"와 "디렉토리"라는 용어를 같은 의미로 사용합니다. 프로그래머의 관점에서 볼 때 차이점이 있습니까? 그렇다면 무엇이 다를까요? OS에 의존합니까, 아니면 광범위하고 일반적인 합의가 있습니까? 이것은 적어도 차이가 있음을 시사합니다.


Wikipedia 에서 "폴더 메타포"섹션을 확인하십시오 . 다음과 같습니다.

파일 시스템 개념 인 디렉토리와이를 나타내는 데 사용되는 그래픽 사용자 인터페이스 메타포 (폴더) 사이에는 차이가 있습니다. 예를 들어, Microsoft Windows는 특수 폴더의 개념을 사용하여 사용자가 Windows 버전마다 다를 수있는 절대 디렉토리 경로를 처리 할 필요가 없도록 상당히 일관된 방식으로 사용자에게 컴퓨터의 내용을 제공 할 수 있도록합니다. 개별 설치. ...

문서 컨테이너를 언급하는 경우 폴더라는 용어가 더 적합합니다. 디렉토리라는 용어는 문서 파일 및 폴더의 구조화 된 목록이 컴퓨터에 저장되는 방식을 나타냅니다. 구별은 디렉토리에 액세스하는 방법 때문일 수 있습니다. Unix 시스템에서 / usr / bin /은 일반적으로 명령 줄 콘솔에서 볼 때 디렉토리라고합니다. 그러나 그래픽 파일 관리자를 통해 액세스하는 경우 사용자는 폴더라고 부르기도합니다.


폴더가 반드시 디스크의 실제 디렉터리는 아닙니다. 예를 들어 Windows의 프린터 폴더 또는 제어판 폴더 일 수 있습니다.

Raymond Chen은 다음과 같이 설명합니다.

Windows 95는 Windows 탐색기와 폴더라는 용어를 도입했습니다. 폴더와 디렉토리의 관계는 무엇입니까?

어떤 사람들은 Windows 95가 디렉터리 이름을 폴더로 변경했다고 생각하지만 실제로는 그 이상입니다.

Windows 탐색기를 사용하면 셸 네임 스페이스의 컨테이너 인 폴더를 볼 수 있습니다. 디렉토리는 파일 시스템 위치에 해당하는 폴더의 한 유형입니다. 제어판, 네트워크 환경 또는 프린터와 같은 다른 유형의 폴더가 있습니다. 이러한 다른 유형의 폴더는 파일에 해당하지 않는 셸 네임 스페이스의 개체를 나타냅니다. 일반적으로 가상 폴더라는 용어는 디렉터리가 아닌 폴더를 지칭하기 위해 적용되었습니다. 즉, 다음 오일러 다이어그램이 있습니다.

(가상 폴더 = 폴더-디렉토리)

일반적으로 쉘 네임 스페이스를 조작하는 코드는 특정 저장 매체에 연결되지 않도록 디렉토리와 파일이 아닌 폴더와 항목에서 작동해야합니다. 예를 들어, 자신을 파일로 제한하는 코드는 Zip 파일의 내용이 가상 폴더의 형태로 노출되기 때문에 Zip 파일로 이동할 수 없습니다.


Álvaro G. Vicario 인용 :

대부분의 경우 상호 교환 가능한 용어입니다. 디렉토리는 파일 시스템의 초기부터 사용되는 고전적인 용어이며 폴더는 Windows 사용자에게 더 친숙하게 들릴 수있는 일종의 친숙한 이름입니다.

주요 차이점은 폴더가 반드시 물리적 디렉터리에 매핑되지 않는 논리적 개념이라는 것입니다. 디렉토리는 파일 시스템 객체입니다. 폴더는 GUI 개체입니다. Wikipedia는 다음과 같이 설명합니다 .

사무실에서 사용되는 파일 폴더와 유사하며 원래 Apple Lisa가 사용했던 이름 폴더는 거의 모든 최신 운영 체제의 데스크탑 환경에서 사용됩니다. 폴더는 종종 물리적 파일 폴더와 시각적으로 유사한 아이콘으로 표시됩니다.

엄밀히 말하면 파일 시스템 개념 인 디렉토리와이를 나타내는 데 사용되는 그래픽 사용자 인터페이스 메타포 (폴더)간에 차이가 있습니다. 예를 들어, Microsoft Windows는 특수 폴더의 개념을 사용하여 사용자가 Windows 버전마다 다를 수있는 절대 디렉토리 경로를 처리 할 필요가 없도록 상당히 일관된 방식으로 사용자에게 컴퓨터의 내용을 제공 할 수 있도록합니다. 개별 설치.

문서 컨테이너를 언급하는 경우 폴더라는 용어가 더 적합합니다. 디렉토리라는 용어는 문서 파일 및 폴더의 구조화 된 목록이 컴퓨터에 저장되는 방식을 나타냅니다. 이름, 번호 및 주소 목록을 포함하고 실제 문서 자체는 포함하지 않는 전화 번호부와 비슷합니다.


  • 디렉토리 는 파일 시스템 개념입니다. GUI에서 디렉토리는 Folder로 표시됩니다 .
  • 예 1 : Unix 시스템 /usr/bin/은 일반적으로 명령 줄 콘솔에서 볼 때 디렉토리라고하지만 그래픽 파일 관리자를 통해 액세스하는 경우 사용자가 폴더라고 부르기도합니다.
  • 예 2 : Windows OS는 디렉토리 ( mkdir, cd같은 CUI )와 폴더 (GUI)를 모두 사용합니다.

전화 번호부 : 전화 번호부와 유사한 이름의 전화 번호부.여기에 이미지 설명 입력


폴더 : 사무실에서 사용하는 파일 폴더와 유사한 이름의 폴더

여기에 이미지 설명 입력


유추:

  • 폴더는 방과 같습니다.
  • 디렉토리는 모든 방을 아는 호텔 키퍼와 같습니다.

특정 폴더를 원하고 디렉토리를 사용합니다. 호텔 키퍼에게 특정 방을 원합니다. 출처


나는 두 개의 하위 키를 발견 할 수도 Windows 레지스트리 편집기에서, 이전에 영어로이 두 단어의 차이를 몰랐 FolderDirectory아래 HKEY_CLASSES_ROOT.

I didn't know the difference until I created some values manually in registry and observed the differences of context menu items. If I create a node under HKEY_CLASSES_ROOT\Folder\shell only, I found that it appears in the context menu of both the virtual folders (aka system directory), like Recycle Bin, and the file system directory, like C:\Windows.

If I create a node under HKEY_CLASSES_ROOT\Directory\shell only, it only appears in the context menu of the file system directory, like C:\Windows, but not a virtual folder. So, like @AntonyW said, in Windows, folders = virtual folders + file system directories.


Your link basically describes what is different on a technical basis. Most of the times People use them interchangeably and which they choose is mostly based on what environment they come from.

Unless you are doing development cross-platform for an application that will modify files, you don't need to know the differences. As soon as you are preparing to work with several different file system types, you should know their differences.

Don't expect people to know which term to use when. I think of those terms as interchangable, since the differences are known to too few people.


Names of folders displayed in File Explorer (the GUI formerly called Windows Explorer) are not necessarily the same as the directories they represent. Consider a case where you are trying to programmatically open a particular folder, a plain directory on mass storage, not a virtual store. Say this was specified by a user based on the name displayed in File Explorer. This name could have been overridden by information in an alternate data stream (ADS) on the directory, and your program will not be referring to the file by its true pathname.

In two examples I've encountered, my app could not open a pathname specified by the user. One of these examples was related to OneDrive; I don't remember the full circumstances of the other example. Anyway, the display name is stored in the ADS named ms-properties:$DATA.

CMD.EXE를 사용하여 DIR / R을 사용하여 ADS를 나열 할 수 있습니다. 파일 탐색기의 속성 메뉴 항목을 사용하여 이러한 폴더의 이름을 바꾸면이 ADS의 내용이 변경되고 파일 탐색기에서 최종 사용자에게 표시되는 이름은 사용자가 입력 한 이름입니다. 그러나이 절차는 디렉토리 이름을 바꾸지 않습니다.

참고 URL : https://stackoverflow.com/questions/5078676/what-is-the-difference-between-a-directory-and-a-folder

반응형