인터랙티브 줄 선택기
fzf 가 stdin 읽어서 인터랙티브 프롬프트 띄움 — 타이핑하면 필터링, 선택한 줄을 stdout 으로. shell 에 통합하면 history 검색 / 파일 picker / 프로세스 선택이 한 머슬메모리로.
설치 + 통합
brew install fzf
$(brew --prefix)/opt/fzf/install # 키 바인딩 + completion 추가설치기가 Ctrl 바인딩 셋 추가:
- Ctrl+R — 퍼지 history 검색. default 대체. 부분 문자열 타이핑, 매치 표시, Enter 실행.
- Ctrl+T — 퍼지 파일 picker. 프롬프트에서 Ctrl+T, 파일 골라, 경로가 command line 에 삽입.
- Alt+C — 서브디렉터리로 퍼지 cd.
독립 사용
# 죽일 프로세스 고르기
kill -9 "$(ps aux | fzf | awk '{print $2}')"
# git branch 선택
git checkout "$(git branch | fzf | tr -d ' *')"
# 에디터에서 파일 열기
$EDITOR "$(fd | fzf)"커스터마이즈
# 더 나은 default
export FZF_DEFAULT_OPTS="--height 40% --reverse --border --info=inline"
# 파일 picker 에 fd 사용 (find 보다 빠름)
export FZF_DEFAULT_COMMAND='fd --type f --hidden --exclude .git'
export FZF_CTRL_T_COMMAND="$FZF_DEFAULT_COMMAND"모두가 빠지는 이유
전체 파일명 / branch 이름 / PID 그만 침. 퍼지 부분 문자열 + 화살표 + Enter 가 거의 모든 인터랙티브 선택에서 tab completion 보다 빨라.