lf — 터미널 파일 관리자
Linux / 파일 및 디스크 관리 / lf.html
이번에는 nnn과 함께 터미널 파일 관리자의 양대 산맥으로 불리는 lf (List Files) 명령어에 대해 알아보겠습니다.
앞서 대화 나누신 nnn이 돌핀(Dolphin)을 TUI로 옮겨온 느낌이라면, lf는 리눅스 유저들에게 익숙한 터미널 텍스트 편집기인 비주얼 스튜디오 코드(VS Code)의 파일 탐색기 창이나 레인저(Ranger)를 극한으로 가볍게 만든 버전에 가깝습니다.
Go 언어로 작성되어 속도가 빠르고, nnn보다 화면 구성이 조금 더 직관적이라는 평을 받습니다.
🖥️ lf 명령어의 실제 출력 구조
lf를 실행하면 화면이 3개의 열(Column)로 쪼개져서 출력되는 것이 가장 큰 시각적 특징입니다. nnn보다 한눈에 들어오는 정보가 많습니다.
Downloads/ ▶ 📂 Projects/ ▶ 📂 src/ ← [3열 구조]
문서/ 📂 Document/ 📜 main.go
사진/ 📄 memo.txt 🖼️ logo.png
🖼️ screenshot.png
---------------------------------------------------------------------------------
~/.config/lf/lfrc 100% 1/4 [15.2K]
- 왼쪽 열: 상위(이전) 폴더의 목록입니다.
- 가운데 열: 현재 내가 들어와 있는 폴더의 파일 목록입니다. (> 커서가 위치함)
- 오른쪽 열: 현재 커서가 가리키는 폴더의 내부 미리보기 또는 파일의 내용 미리보기가 실시간으로 뜹니다.
🚀 설치 방법
- Ubuntu / Debian:
sudo apt install lf - Arch Linux:
sudo pacman -S lf - macOS (Homebrew):
brew install lf
⌨️ 실제 어떻게 사용하는가? (핵심 사용법)
Vim 편집기 단축키(hjkl)를 기본 뼈대로 사용하므로 개발자들에게 매우 친숙합니다.
기본 이동
- k / j (또는 ↑ / ↓): 위아래 파일 이동
- l (또는 → / Enter): 폴더 안으로 진입 / 파일 열기
- h (또는 ←): 상위 폴더로 빠져나가기
파일 관리 작업
- y (Yank): 복사하기
- d (Cut): 잘라내기(이동 준비)
- p (Paste): 붙여넣기 (복사나 잘라낸 파일 배치)
- clear: 복사/잘라내기 선택 취소
- delete: 파일 삭제
검색 및 필터
- /: 실시간 검색 (타이핑하면 해당 글자가 들어간 파일로 커서가 점프)
⚔️ nnn vs lf 한눈에 비교하기 (서버 관리자 관점)
두 명령어 모두 서버 관리용으로 최고이지만, 매력이 조금 다릅니다.
| 비교 항목 | nnn | lf |
|---|---|---|
| 개발 언어 | C 언어 (극도의 미니멀리즘) | Go 언어 (현대적이고 깔끔함) |
| 화면 스타일 | 1개 열로 심플하게 출력 (용량 표시 최적화) | 3개 열(상위-현재-미리보기) 구조 |
| 미리보기 | 플러그인을 켜야 별도 창으로 지원 | 오른쪽 열에서 기본으로 내용 미리보기 제공 |
| 설정 편의성 | 환경 변수와 플러그인 위주 설정 | lfrc 설정 파일을 통한 직관적인 커스텀 |
nnn은 화면을 넓게 쓰면서 파일 목록과 용량을 시원시원하게 보기 좋고, lf는 굳이 파일을 열어보지 않아도 오른쪽 열에서 코드나 텍스트 내용을 바로바로 확인할 수 있어서 서버 설정 파일을 수정할 때 매우 편리합니다.
nnn과 lf 중에서 어떤 화면 스타일(심플한 1열 vs 미리보기가 있는 3열)이 질문자님의 서버 관리 스타일에 더 맞아 보이시나요?
실제 실행 화면
이 PC에서 lf를 직접 실행한 화면입니다. 왼쪽부터 상위 폴더, 현재 폴더, 선택 항목의 미리보기가 3열로 표시되고, 맨 아래에 상태 표시줄이 나옵니다.

실제 운영 중인 서버
화면 하단 상태 표시줄의 소유자·그룹 정보는 블랙 처리했습니다.
이 문서는 화면 표시용 가상 디렉터리의 항목입니다. 실제 서버 파일시스템과 연결되지 않으며, 파일 실행이나 시스템 명령을 수행하지 않습니다.