はじめに
ターミナルで cd するとき,ディレクトリ名を毎回打つのが面倒だと感じたことはありませんか?
fzf(ファジーファインダー)を導入すると,Alt+C を押すだけでディレクトリ一覧がインタラクティブに表示され,文字を打って絞り込んだりカーソルキーで選んだりできるようになります.
この記事ではWindowsのGit Bashにfzfをインストールして使えるようにするまでを説明します.
環境
- Windows 10 / 11
- Git Bash(Git for Windowsに付属)
- winget(Windows Package Manager)
インストール
1. fzf本体をインストール
wingetを使ってインストールします.
winget install junegunn.fzf
インストール後,ターミナルを再起動するかパスを再読み込みします.
動作確認:
fzf --version
# 例: 0.72.0 (...)
2. ~/.bashrc に設定を追記
以下のコマンドで ~/.bashrc にfzfのシェル統合を追加します.
echo 'eval "$(fzf --bash)"' >> ~/.bashrc
source ~/.bashrc
これだけで設定完了です.
使い方
Alt+C:ディレクトリを選んでcd
Alt+C を押すと現在のディレクトリ以下のサブディレクトリ一覧がfzfで表示されます.
>
Documents/
Downloads/
Desktop/
Projects/
Projects/myapp/
Projects/myapp/src/
- 文字を打つ → リアルタイムでフィルタ(部分一致・ファジー検索)
- 上下矢印キー → 候補を移動
- Enter → 選択してcd
- Esc → キャンセル
Ctrl+T:ファイル・フォルダを検索してコマンドに挿入
Ctrl+T を押すとファイル/フォルダ一覧が表示され,選択するとカーソル位置に挿入されます.
例:cat と打ってから Ctrl+T を押すと,ファイルを選んで cat Documents/memo.txt のようにコマンドが完成します.
Ctrl+R:コマンド履歴をインタラクティブ検索
Ctrl+R で過去のコマンド履歴をfzfで絞り込み検索できます.うろ覚えのコマンドを探すのに便利です.
カスタマイズ
現在の階層だけを検索対象にする
デフォルトでは深い階層まで再帰的に検索します.現在の階層(1段階)だけにしたい場合は ~/.bashrc に追加します.
export FZF_ALT_C_COMMAND='find . -maxdepth 1 -type d'
プレビューを表示する
ディレクトリの中身をプレビューしながら選択したい場合:
export FZF_ALT_C_OPTS='--preview "ls {}"'
デフォルトオプションを設定する
fzf全体のデフォルト表示をカスタマイズできます.
export FZF_DEFAULT_OPTS='--height 40% --layout=reverse --border'
まとめ
| キー | 動作 |
|---|---|
Alt+C |
サブディレクトリをfzfで選んでcd |
Ctrl+T |
ファイル/フォルダを検索してコマンドに挿入 |
Ctrl+R |
コマンド履歴をfzfで検索 |
wingetで1コマンド,.bashrc に1行追加するだけで導入できるので,ぜひ試してみてください.