tree — 디렉터리 구조 시각화
Linux / 파일 및 디스크 관리 / tree.html
💬 "tree 명령어"
tree는 디렉터리 구조를 계층 모양으로 보여줍니다. ls를 여러 번 치는 것보다 구조 파악이 빠릅니다.
로그가 쌓인 디렉터리나 배포 산출물 구조를 빠르게 확인할 때 씁니다.
- 개념: 지정한 경로부터 하위 디렉터리와 파일을 나무 형태로 출력합니다.
- 왼쪽:
├──,└──같은 연결선으로 계층을 나타냅니다. - 마지막 줄: 디렉터리 수와 파일 수를 요약해 줍니다.
- 깊이: -L 옵션으로 몇 단계까지 볼지 제한할 수 있습니다.
자주 쓰는 옵션
| 옵션 | 설명 |
|---|---|
-L <n> | 깊이를 n단계로 제한합니다 |
-d | 디렉터리만 표시합니다 |
-h | 파일 크기를 함께 사람이 읽기 쉬운 단위로 표시 |
--du | 디렉터리별 누적 용량을 표시합니다 |
-a | 숨김 파일도 표시합니다 |
필수 명령어 조합 3가지
tree -L 2 /var/www/html— 웹 루트 구조를 2단계까지만 확인tree -d -L 2 /opt/app— 디렉터리만 보고 구조 파악tree --du -h /var/log | head -30— 로그 디렉터리별 용량 확인
💬 "실수를 줄이려면 어떤 옵션을 같이 쓰면 좋을까?"
실제 운영 중인 서버에서 자주 만나는 상황을 순서대로 정리했습니다.
1단계 · 구조 한눈에 보기
깊이를 제한해 전체 형태를 파악합니다.
tree -L 2 /var/www/html
2단계 · 용량과 함께 보기
어느 하위 폴더가 큰지 확인합니다.
tree --du -h -L 2 /var/log
3단계 · 문서로 남기기
리뷰/인수인계용으로 구조를 파일로 저장합니다.
tree -L 3 /opt/app > /tmp/app-structure.txt
실무에서는 이렇게 씁니다
1. 배포 구조 검증
상황 — 릴리스 압축을 풀었는데 파일 배치가 예상과 다릅니다.
tree -L 2 /opt/app/releases/20261018
결과 — 최상위에 public/이 있어야 하는데 하위 폴더가 한 단계 더 들어가 있으면 압축 경로 문제입니다.
포인트 — 배포 후 tree로 한 번 보는 습관이 404/500의 원인을 빨리 찾게 합니다.
2. 로그 적재 위치 파악
상황 — 디스크가 차서 어느 로그 디렉터리가 큰지 확인합니다.
tree --du -h -L 2 /var/log | sort -k2 -h | tail
결과 — 용량이 큰 하위 디렉터리를 확인하고 회전 대상을 정합니다.
포인트 — tree의 --du는 재귀 합계라 폴더 단위 판단에 편합니다.
주의할 점
- 파일이 수만 개인 디렉터리에서 tree를 그냥 실행하면 출력이 폭발합니다. -L로 제한합니다.
- 기본 설치가 아닌 경우가 있어 tree 명령이 없으면 패키지 설치가 필요합니다.
- 출력이 길면 head/tail로 잘라서 봅니다.
실제 실행 화면
웹 루트의 2단계 구조를 확인한 결과입니다.

실제 운영 중인 서버
이 문서는 화면 표시용 가상 디렉터리의 항목입니다. 실제 서버 파일시스템과 연결되지 않으며, 파일 실행이나 시스템 명령을 수행하지 않습니다.