# 파일 · 폴더 · 경로

> **이 장에서 배우는 것**
> 경로를 읽는 법, 확장자가 실제로 뜻하는 것, 그리고 사람이 읽는 파일과 기계만
> 읽는 파일의 구분.

## 경로는 주소입니다

폴더는 폴더 안에 들어갑니다. 그 겹침을 한 줄로 적은 것이 **경로**입니다.

```
macOS · Linux    /Users/jinho/work/report.md
Windows          C:\Users\jinho\work\report.md
```

| 조각 | 뜻 |
|---|---|
| `/` 또는 `C:\` | 맨 바깥 — 여기서 시작합니다 |
| `Users/jinho` | 내 계정의 폴더 |
| `work` | 그 안의 폴더 |
| `report.md` | 파일 이름과 확장자 |

**구분 기호가 운영체제마다 다릅니다.** macOS·Linux는 `/`, Windows는 `\`.
문서에서 `/Users/…` 로 시작하는 예시를 봤다면 macOS 기준입니다.

## 절대 경로와 상대 경로

| | 예 | 뜻 |
|---|---|---|
| **절대** | `/Users/jinho/work/report.md` | 어디서 부르든 같은 곳 |
| **상대** | `work/report.md` · `./report.md` | **지금 있는 폴더**를 기준으로 |
| 위로 | `../report.md` | 한 칸 위 폴더 |

**에이전트에게 파일을 알려줄 때는 절대 경로가 안전합니다.** 상대 경로는 "지금
어느 폴더에 있는가"에 따라 가리키는 곳이 달라지는데, 그 "지금"이 사람과
에이전트에게 서로 다를 수 있습니다.

[작업 폴더 등록하기](/guide/ht-working-directory)가 하는 일이 정확히 이
"지금 있는 폴더"를 못박는 것입니다.

## 확장자는 약속일 뿐입니다

이름 끝의 `.md` · `.csv` · `.pdf` 를 확장자라고 합니다. **파일의 내용을 바꾸는
것이 아니라 어떤 프로그램으로 열지를 정하는 이름표**입니다.

```
✗ report.csv 를 report.xlsx 로 바꿔 이름만 고치면 엑셀 파일이 된다
✓ 이름표만 바뀝니다 — 내용은 그대로 CSV 라 열면 깨집니다
```

> **Windows는 기본적으로 확장자를 숨깁니다.** 그래서 `보고서.pdf` 로 보이는
> 것이 실제로는 `보고서.pdf.exe` 일 수 있습니다. 파일 탐색기에서 확장자를
> 보이도록 켜두세요 — 보안의 기본입니다.

## 사람이 읽는 파일과 기계만 읽는 파일

이 구분이 뒤에서 계속 나옵니다.

| | 텍스트 파일 | 바이너리 파일 |
|---|---|---|
| 열면 | 글자가 그대로 | 깨진 기호 |
| 예 | `.txt` `.md` `.csv` `.json` `.py` | `.pdf` `.xlsx` `.hwp` `.png` `.zip` |
| 변경 이력 | 어디가 바뀌었는지 줄 단위로 보임 | 통째로 다른 파일이 됨 |
| AI에게 | **그대로 넣을 수 있음** | **뽑아내는 단계가 필요** |

**마지막 줄이 실무의 핵심입니다.** 에이전트가 PDF나 한글 문서를 다룰 때
"변환"이라는 단계가 왜 붙는지가 여기서 나옵니다 —
[문서를 자료로 바꾸기](/guide/ht-documents)와
[데이터의 형태](/guide/it-data-formats)에서 이어집니다.

## 이름 짓기 — 나중에 자신을 살립니다

에이전트가 파일을 만들고 사람이 나중에 찾습니다. 그 사이를 잇는 것이 이름입니다.

```
✗ 최종.md  ·  최종_진짜최종.md  ·  보고서 (1).md
✓ 2026-08-19-주간보고.md  ·  q3-반품분석.csv
```

```
□ 공백보다 하이픈 — 명령줄에서 공백은 따옴표가 필요합니다
□ 날짜는 2026-08-19 형식 — 이름순 정렬이 곧 날짜순이 됩니다
□ 한글 이름도 됩니다. 다만 외부 시스템에 올릴 때 깨지는 일이 있습니다
```

## 숨은 파일

이름이 점으로 시작하면(`.env` · `.gitignore`) 탐색기에서 기본적으로 **안
보입니다.** 설정 파일이 주로 이 방식이라, "그런 파일 없는데요"의 절반은 숨어
있는 것입니다.

> **`.env` 는 특히 조심하세요.** 비밀번호와 열쇠가 들어가는 파일이라
> 관행적으로 숨김이고, 실수로 공유되면 그대로 사고입니다 —
> [계정 · 비밀번호 · API 키 · 권한](/guide/it-accounts)에서 다시 봅니다.

## 자주 하는 오해

### "용량이 큰 파일은 왜 AI에 못 넣나요"

크기 자체보다 **글자 수**입니다. 모델이 한 번에 보는 양에 한계가 있어
([컨텍스트 창](/guide/ai-context-window)), 긴 문서는 쪼개서 필요한 부분만
넣습니다. 10MB짜리 사진 한 장보다 1MB짜리 텍스트가 훨씬 부담입니다.

### "폴더를 옮겼는데 프로그램이 못 찾습니다"

경로가 주소이기 때문입니다. 등록해 둔 절대 경로는 폴더를 옮겨도 따라오지
않습니다. **옮겼으면 등록도 고쳐야 합니다.**

---

## 확인

**1. 절대 경로가 상대 경로보다 안전한 경우는 언제입니까?**

<details>
<summary>답</summary>

**"지금 있는 폴더"가 서로 다를 수 있을 때**입니다. 에이전트에게 파일 위치를
알려줄 때가 대표적입니다.
</details>

**2. 확장자를 `.csv` 에서 `.xlsx` 로 바꾸면 엑셀 파일이 됩니까?**

<details>
<summary>답</summary>

**아닙니다.** 확장자는 어떤 프로그램으로 열지를 정하는 이름표일 뿐, 내용은
그대로입니다. 열면 깨집니다.
</details>

**3. 텍스트 파일과 바이너리 파일 중 AI에 바로 넣기 쉬운 쪽은?**

<details>
<summary>답</summary>

**텍스트 파일**입니다. 바이너리(PDF·엑셀·한글)는 글자를 뽑아내는 변환 단계가
먼저 필요합니다.
</details>

---

다음은 그 파일들을 직접 다루는 창입니다 → [터미널과 명령어](/guide/it-terminal)
