개요
최근 몇 년 사이 기존 GNU CLI를 Rust로 대체하는 흐름이 강해지고 있습니다. Rust 기반 CLI 도구들은 공통적으로 빠름, 단일 바이너리, 의존성 최소, 크로스 플랫폼이라는 특징을 가집니다.
공통 특징:
- 매우 빠름 — Rust 특성상 네이티브 속도
- 단일 바이너리 — 설치/배포 간단
- 의존성 거의 없음
- Linux / macOS / WSL 동일하게 사용 가능
파일 / 디렉토리 탐색
fd — find 대체
fd config # "config" 포함 파일 검색
fd .rs # .rs 확장자 검색
fd -e py -x bat # .py 파일을 bat으로 열기
.gitignore 자동 적용
- 짧고 직관적인 문법
- 정규식 + 글로브 패턴 지원
ripgrep — grep 대체
rg TODO # 현재 디렉토리에서 TODO 검색
rg "SELECT" # SQL 검색
rg -t py "def " # Python 파일에서만 검색
- 코드 검색 최강 — 대형 repo에서도 빠름
.gitignore 자동 적용
- 멀티코어 병렬 검색
eza — ls 대체
eza # 기본 목록
eza -la # 상세 + 숨김 파일
eza --tree # 트리 출력
eza -la --git # git 상태 표시
- git 상태(수정/추가/무시) 파일 옆에 표시
- 색상 UI, 아이콘 지원
exa의 유지보수 포크
파일 보기 / 텍스트
bat — cat 업그레이드
bat main.py # 신택스 하이라이트
bat -A file.txt # 비표시 문자 표시
bat --diff file # git diff 표시
- 신택스 하이라이트 (100+ 언어)
- 줄 번호 표시
- git diff 인라인 표시
- 페이저(pager) 자동 적용
delta — git diff 뷰어
git diff | delta
git log -p | delta
- side-by-side diff
- 신택스 하이라이트
~/.gitconfig에 설정하면 자동 적용
# ~/.gitconfig
[core]
pager = delta
[delta]
side-by-side = true
터미널 탐색 / Fuzzy Search
fzf — 퍼지 파인더 (Go 기반)
fzf # 파일 검색
fd | fzf # fd 결과를 fuzzy 선택
history | fzf # 히스토리 검색
fd | fzf | xargs bat # 파일 찾기 → 선택 → 열기
- shell 히스토리 검색 (
Ctrl+R 연동)
- 파일 인터랙티브 검색
- 다른 CLI 도구와 파이프 조합 필수
디렉토리 이동
zoxide — cd 업그레이드
z project # "project" 포함 자주 간 폴더로 이동
z doc # docs, documents 등 패턴 학습
zi # 인터랙티브 선택 (fzf 연동)
- 방문 빈도/최근성 기반 디렉토리 학습
- AI처럼 이동 패턴 자동 학습
autojump, z의 Rust 대체
# shell 초기화 추가 (zsh)
eval "$(zoxide init zsh)"
시스템 모니터링
bottom — top / htop 대체
btm # TUI 시스템 모니터
btm --basic # 간소화 모드
- CPU, RAM, 네트워크, 디스크 통합 TUI
- 프로세스 필터/정렬
- 커스텀 레이아웃
네트워크 / 디버깅
xh — curl 대체
xh https://api.github.com
xh POST api.example.com/users name=Alice
xh -d data.json POST api.example.com/items
- JSON pretty print 자동
curl보다 읽기 쉬운 문법
httpie의 Rust 재구현
bandwhich — 프로세스별 네트워크 모니터
sudo bandwhich # 프로세스별 네트워크 사용량
개발자 필수 도구
hyperfine — 벤치마크
hyperfine "rg foo" "grep -r foo ."
hyperfine --warmup 3 "fd .rs"
- 통계적 벤치마크 (평균, 표준편차)
- 워밍업 실행 지원
- Markdown/CSV/JSON 출력
tokei — 코드 라인 통계
tokei # 현재 프로젝트 언어별 라인 수
tokei src/
───────────────────────────────────────────────────────────────────────────────
Language Files Lines Code Comments Blanks
───────────────────────────────────────────────────────────────────────────────
Rust 12 12000 10500 800 700
Python 8 8000 6500 900 600
CLI UI / 프롬프트
Starship — 터미널 프롬프트
# 설치 후 shell 초기화에 추가
eval "$(starship init zsh)"
eval "$(starship init bash)"
- git 브랜치, 상태 표시
- Node/Python/Rust/Go 버전 자동 감지
- 모든 shell 지원 (zsh, bash, fish, PowerShell)
- TOML 설정
편집기
Helix — 터미널 에디터
hx main.py # 파일 열기
hx . # 현재 디렉토리
- tree-sitter 기반 신택스 하이라이트
- LSP 내장 (플러그인 없이 자동완성)
- Kakoune 스타일 키바인딩 (selection-first)
- 설정 없이 바로 사용 가능
데이터 처리
jq — JSON 처리 (C 기반, 필수)
cat data.json | jq ".name"
curl api.example.com | jq ".items[].id"
jq -r ".[] | select(.age > 30)" users.json
| 항목 | 내용 |
|---|
| 역할 | JSON 파싱/변환 |
| 언어 | C (Rust 아니지만 개발자 필수) |
GNU → Rust 대체 매핑
| 기존 도구 | Rust 대체 | 주요 개선 |
|---|
grep | ripgrep | 10~100x 빠름, gitignore 적용 |
find | fd | 직관적 문법, 빠름 |
cat | bat | 신택스 하이라이트, git diff |
ls | eza | git 상태, 트리, 색상 |
cd | zoxide | 스마트 디렉토리 이동 |
top/htop | bottom | TUI 통합 모니터 |
curl | xh | 읽기 쉬운 문법, JSON 자동 포맷 |
diff (git) | delta | side-by-side, 하이라이트 |
time | hyperfine | 통계 벤치마크 |
wc -l | tokei | 언어별 상세 통계 |
vim/nvim | helix | LSP 내장, 설정 불필요 |
개발자 추천 조합 (2026)
핵심 8개 세트
# 설치 (macOS)
brew install fd ripgrep bat eza fzf zoxide git-delta starship
# 설치 (Ubuntu/Debian)
apt install fd-find ripgrep bat
cargo install eza zoxide git-delta starship
# shell 초기화 (~/.zshrc)
eval "$(zoxide init zsh)"
eval "$(starship init zsh)"
| 도구 | 역할 |
|---|
| fd | 파일 검색 |
| ripgrep | 코드 검색 |
| bat | 파일 보기 |
| eza | 디렉토리 목록 |
| fzf | 인터랙티브 선택 |
| zoxide | 스마트 이동 |
| delta | git diff |
| starship | 프롬프트 |
파이프 조합 예시
# 파일 찾기 → 선택 → 열기
fd | fzf | xargs bat
# 코드 검색 → 선택 → 열기
rg -l "TODO" | fzf | xargs hx
# 최근 폴더 인터랙티브 이동
zi
체감 TOP 5
개발자들이 가장 많이 추천하는 것:
- ripgrep — 코드 검색 속도가 압도적
- fd —
find를 다시 쓸 수 없게 됨
- bat —
cat의 완벽한 대체
- zoxide — 한번 쓰면 못 돌아감
- starship — 프롬프트 정보량이 올라감
요즘 스타트업 터미널 스택 (2026)
에디터: Cursor (AI) + Helix (터미널)
Shell: zsh + starship + zoxide
탐색: fd + ripgrep + fzf + eza
보기: bat + delta
모니터: bottom + bandwhich
HTTP: xh + jq
AI: Claude Code CLI / Gemini CLI
관련 항목