컨텐츠로 건너뛰기

안내서

FNS는 무엇인가요?

FNS(File Name System)은 파일과 디렉터리 작명 규칙을 위한 시스템입니다.

늘 그렇듯이 시스템은 무질서와 혼란을 없애기 위해서 만들어집니다. 우리가 매일 수십 번씩 열고 닫는 폴더는 정리 정돈하는 것이 쉽지 않습니다.

아래 그림은 이 주제를 다룰 때마다 항상 등장하는 유명한 짤입니다.

시스템이 없는 폴더의 예

폴더가 정리되지 않고, 찾기가 어렵고, 활용도 어려운 가장 큰 이유는 파일 이름이 이상하기 때문입니다. FNS는 이 문제를 해결하기 위한 시스템입니다.

이 홈페이지와 커뮤니티의 목적은 WWW와 같이 모든 사람이 사용하고 공유하는 FNS 표준을 만드는 것입니다.

어떻게 작동하나요?

FNS는 작명 규칙을 저장하는 파일 포맷과 이를 사용하는 도구들로 이루어져 있습니다. HTML과 관련 소프트웨어(웹 브라우저와 웹 서버)의 관계와 비슷합니다.

1. FNS spec (YAML)

파일 이름의 규칙을 아주 쉽고 간단하게 기술할 수 있습니다. 예를 들면 아래와 같은 파일들이 있다고 가정해 봅시다.

  • Report-revenue-20240103.xls
  • Report-users-20240103.xls
  • Report-traffic-20240105.xls
  • Report-ad-20240106.xls

이를 나타내는 YAML은 아래와 같습니다.

index.yaml
- Report-<TITLE>-<YYYYMMDD>.xls

반복되는 패턴을 <>로 표현해줍니다. xml 같이 복잡하지 않습니다. 메모장만 있으면 바로 만들 수 있습니다.

이제 폴더를 표현해 봅시다.

  • 디렉터리Reports
    • Report-revenue-20240103.xls
    • Report-users-20240103.xls
    • Report-traffic-20240105.xls
    • Report-ad-20240106.xls

위와 같은 폴더와 파일은 아래와 같이 표현할 수 있습니다.

index.yaml
- Reports:
- Report-<TITLE>-<YYYYMMDD>.xls

: 로 폴더임을 알려주고, 들여쓰기 공백으로 폴더안에 있는 항목임을 표현합니다.

이러한 yaml파일 하나만 있으면, 폴더의 내용과 구조를 파악할 수 있고, 이를 공유할수 있게 됩니다. 예를 들어, 다른 사람에게 작업폴더를 설명하거나 업무를 인계하거나 협업할 때 관리가 수월해집니다. 무엇보다, 이 파일은 기계가 정확히 해석할수 있기 때문에, 응용과 확장이 가능합니다.

위에서 사용된 예제는 핵심적인 개념을 전달하기 위해 단순화된 yaml을 사용했습니다. 실제 규격은 FNS yaml 규격 문서를 확인하세요.

2. 엔드 유저 소프트웨어

일반 사용자에게 FNS가 수용되려면 여러 분야에서 편리한 소프트웨어가 필요합니다. 소프트웨어나 서비스를 이곳에서 분류하여 소개할 예정입니다.

FAQ

Q: FNS는 기존의 파일 명명규칙과 무엇이 다른거죠?

비슷한 목표를 가지고 있지만 크게 두가지가 다릅니다. 일단, 기존의 파일 명명 규칙은 규칙을 설명하는 언어(규칙)이 없습니다. 워드파일에 저장하기도 하고 엑셀로 저장하기도 합니다. 그래서, 데이터로서 공유와 가공이 어렵습니다. 두번째로, 명명규칙은 사용자에게 추가적인 작업을 요구할뿐, 어떠한 편의성도 제공하지 않습니다. 이런 이유로, 필요성은 누구나 알고 있지만, 단순한 명명규칙은 사용자들에게 외면을 받았습니다. FNS는 데이터 구조와 소프트웨어를 동시에 제공합니다.

Q: 파일 시스템이 등장한지 수십년이 흘렀습니다. FNS는 이미 있지 않나요?

엄밀히 말하면 존재합니다. 확장자는 최초의 FNS라고 부를 수 있습니다. 1970년대 .으로 구분되는 확장자가 CP/M OS에서 도입되었고, 이후 대부분의 환경에서 수용되었습니다. 확장자에 따라서 아이콘이 구분되고, 어떤 프로그램으로 파일을 사용해야 하는지 결정이 됩니다. 많은 소프트웨어들이 이 확장자를 사용하여 파일을 해석하고 처리합니다. 확장자는 성공한 첫번째 FNS라고 할 수 있습니다. 그러나, 아쉽게도 이후 50년이 넘는 동안, 이 분야의 발전은 멈춘 상태입니다. FNS의 목표는 이를 다시 재개하는 것입니다.