macOSとLinuxでfzfを入れる方法:ファイルと履歴のあいまい検索
fzfを入れてシェル統合を有効化し、Ctrl+TとCtrl+Rでファイルとコマンド履歴をあいまい検索。
端末でフォルダを掘ったり、上矢印で昨日のコマンドを探す代わりに、fzf は任意のリストをあいまい検索できるパネルにします。
macOSとLinuxでfzfを入れる方法 — 手順は公式リポジトリ junegunn/fzf に沿います。
fzfでできること
Ctrl+T / Ctrl+R / Alt+C
公式 install が bash/zsh/fish にファイル・履歴・cd を割り当てます。
fd / rg
~/.zshrc の FZF_DEFAULT_COMMAND を fd か rg --files にすると find 全走査を避けられます。
| fzf
行を出すコマンドは | fzf に渡せます。例: git branch | fzf
macOSとLinuxへのインストール
- 1
macOS
brew install fzf, then$(brew --prefix)/opt/fzf/install. - 2
Debian / Ubuntu
sudo apt update && sudo apt install fzfor a GitHub release binary. - 3
Fedora / Arch
sudo dnf install fzforsudo pacman -S fzf, then the READMEinstallscript. - 4
確認
fzf --version のあと zsh/bash で Ctrl+T、Ctrl+R、Alt+C を試します。
覚えるキー
| キー | 動作 |
|---|---|
Ctrl+T | ファイルを行に挿入 |
Ctrl+R | 履歴検索 |
Alt+C | ディレクトリへ cd |
Esc | 取消 |
ファイル検索
export FZF_DEFAULT_COMMAND='fd --type f --hidden --follow --exclude .git'
export FZF_CTRL_T_COMMAND="$FZF_DEFAULT_COMMAND"見つけた内容をすり合わせるなら wbroom ホーム — 部屋の作成と参加.
コマンド履歴
Ctrl+R は HISTFILE を読みます。履歴が短いときは zsh の HISTSIZE/SAVEHIST または bash の HISTFILESIZE を増やします。
確認しておきたいこと
fzfとripgrep、fdの関係は?
fzfはインタラクティブな絞り込み、rgとfdは候補リストを速く出すツールです。組み合わせて使うことが多いです。
Windowsでも使えますか?
Git Bash、WSL、Windows向けビルドがREADMEにあります。本文はmacOS/Linux端末に焦点を当てています。
ショートカットを外すには?
パッケージを削除し、~/.zshrc などの source 行を消します。READMEの install --uninstall も参照してください。
複数ファイルを選べますか?
--multi を付け、Tab で複数行を選び、Enter でまとめて出力できます。