본문 바로가기
리눅스

fzf 소개 및 간략한 사용법

by slowcloud_ 2025. 7. 17.

문자열 fuzzy search를 활용한 오픈소스 리눅스 커맨드. 여러 기여를 통해 다양한 기능들이 추가되었다.

 

아래 깃허브 리포지토리에서 소스코드를 확인할 수 있다.

https://github.com/junegunn/fzf

 

GitHub - junegunn/fzf: :cherry_blossom: A command-line fuzzy finder

:cherry_blossom: A command-line fuzzy finder. Contribute to junegunn/fzf development by creating an account on GitHub.

github.com

 

윈도우에서 `winget install fzf`, 우분투에서 `sudo apt install fzf` 등으로 설치할 수 있다.

타 운영체제에서의 설치는 다음 링크에서 확인할 수 있다.

https://github.com/junegunn/fzf?tab=readme-ov-file#linux-packages

가급적 리눅스 환경에서 사용하는 것을 추천한다.

 

`fzf`의 기본적인 기능을 간략히 소개하기 위해, 다음과 같은 환경을 구성하였다.

fzf를 실행할 디렉터리 내부의 구조.

 

`fzf`만 실행 시, 현재 디렉터리 위치에서 찾을 수 있는 모든 파일들을 찾아 화면에 띄워준다.

hello-fzf에서 fzf를 실행했을 때의 모습.
hello를 선택 시, 다음과 같이 출력이 된다.

 

아래와 같이 명령어 파이프라인을 구성해서 다양한 작업을 수행할 수 있다.

원하는 방식으로 파이프라인을 구성할 수 있다.

 

fzf에서 제공하는 옵션을 넣어서 추가적인 기능을 구현할 수 있다. 아래와 같이 fzf에서 파일의 내용을 미리 확인하는 것도 가능하다.

fzf --preview "cat {}"

 

위에서 보았듯이, xargs와 같은 리눅스 명령어와 함께 엮어서 사용하면 무궁무진하게 활용할 수 있다.

 

다음은 깃 브랜치를 변경하는 파이프라인이다.

fzf 내부에서 'hello'를 선택하였음.

 

fzf에서 제공하는 더 다양한 설정들은 fzf 리포지토리에서 확인할 수 있다.

https://github.com/junegunn/fzf

 

GitHub - junegunn/fzf: :cherry_blossom: A command-line fuzzy finder

:cherry_blossom: A command-line fuzzy finder. Contribute to junegunn/fzf development by creating an account on GitHub.

github.com