개발자의 생산성을 높여주는 맥 터미널 필수 명령어: Tree
Need to see your file structure at a glance? Learn how to install and use the tree command on macOS. Perfect for documentation, debugging, and saving directory maps to .txt files.
터미널에서 프로젝트 폴더를 탐색할 때, 습관적으로 ls만 치고 계신가요?
파일이 몇 개 없을 땐 괜찮지만, 라이브러리나 모듈이 쌓여있는 lib 폴더나 src 폴더를 파악하기엔 한계가 있습니다.
오늘은 복잡한 디렉토리 구조를 나무처럼 시각적으로 깔끔하게 보여주는 tree 명령어를 소개합니다. 이거 하나만 알아도 터미널 작업이 훨씬 쾌적해집니다.
🛠️ 일단 설치부터 (Mac 기준)
맥(macOS) 터미널에는 아쉽게도 tree 명령어가 기본 내장되어 있지 않습니다. 하지만 Homebrew가 있다면 단 한 줄로 설치가 끝납니다.
brew install tree설치가 완료되었다면 터미널에 tree를 입력해보세요. 현재 위치의 모든 파일이 트리 구조로 펼쳐질 겁니다.
📂 특정 폴더 구조만 보고 싶을 때
개발을 하다 보면 전체가 아니라, 특정 라이브러리 폴더(lib)의 구조만 확인하고 싶을 때가 많습니다.
그럴 땐 tree 뒤에 폴더명을 붙여주세요.
tree lib결과 예시:
lib
├── adapters
│ ├── database.js
│ └── network.js
├── core
│ ├── engine.js
│ └── utils.js
└── index.js텍스트로 된 지도처럼 구조가 한눈에 들어옵니다.
⚡️ 더 스마트하게 사용하는 3가지 옵션
프로젝트가 커지면 tree 명령어 한 번에 수천 줄이 출력될 수도 있습니다. 이때 꼭 필요한 옵션 3가지를 기억하세요.
1. 너무 깊은 곳은 생략하기 (-L)
가장 유용한 옵션입니다. 뎁스(Depth)를 제한해서 딱 필요한 깊이까지만 봅니다.
# 2단계 깊이까지만 확인
tree -L 2 lib2. 파일 빼고 폴더만 보기 (-d)
파일은 관심 없고, 전체적인 디렉토리 아키텍처만 보고 싶을 때 사용합니다.
tree -d lib3. 특정 폴더 제외하기 (-I)node_modules처럼 너무 방대한 폴더는 결과에서 빼고 싶을 때 필수입니다.
# node_modules는 제외하고 보여줘
tree -I node_modules🍯 꿀팁: 파일 구조를 텍스트로 '저장'해서 공유하기
팀원에게 프로젝트 구조를 설명하거나 README.md에 폴더 구조를 첨부해야 할 때가 있죠? 화면을 캡처하는 것보다 텍스트로 저장하는 것이 훨씬 깔끔합니다.
명령어 뒤에 > 기호와 파일명을 붙이면 화면 출력을 파일로 저장해 줍니다.
# 현재 폴더 구조(2단계 깊이)를 structure.txt 파일로 저장
tree -L 2 > structure.txtPro Tip:
파일 확장자를 .md (마크다운)로 저장하고, 내용을 코드 블럭(```)으로 감싸면 깃허브나 문서 툴에서 바로 예쁘게 사용할 수 있습니다.
Bash
# README에 넣기 좋게 마크다운 파일로 저장
tree -L 2 > project_structure.md이제 생성된 파일을 열어서 복사+붙여넣기만 하면 문서화 끝입니다! 🎉
🚀 마치며
이제 터미널에서 cd와 ls를 반복하며 길을 잃지 마세요. tree 명령어로 숲을 먼저 보는 습관을 들이면 구조 파악이 훨씬 빨라집니다.
터미널 환경을 더 멋지게 꾸미고 싶거나 궁금한 명령어가 있다면 댓글로 남겨주세요!