FzFとは
Fzf (Fuzzy Finder) はコマンドライン用のファジーファインダー(あいまい検索)ツールです。
ファジー理論はここで説明しないですが、goo辞書からファジーの簡単な意味を引用させていただきます。
(1)境界が不明確であること。あいまいであること。柔軟性があること。また、そのさま。「ファジーな考え方」
(2) 人間の認識のあいまいな部分をコンピューターで処理する技術。
Google検索バーで文字を入力始まると、候補が下部に出てくるような感じです。
FzFのインストール
Githubからインストールできますし
Homebrewから直接インストールも可能です。
$ brew install fzf
FzFを実行してみましょう
インストールを完了したら、早速実行してみましょう。例のために似たような名のいくつファイルを用意しました。
では、fzf
を実行してみましょう。
$ fzf
ここでファジーの方が始まります。検索結果を絞るために、文字も入力できます。例えば、example2.txt
をを出力したい場合は、まずexample
から入力すると
当てはまる候補ファイル名に絞られます。ここからマウスやキーボードでファイルを選択できます。適切なファイル名にたどり着いたらENTERキーを押すと標準出力に表示されます。
ファジーファインダーだから、ファイル名に入力されている文字が存在したら、候補として表示されます。
いい感じですね。
FzFが便利になる場合
標準出力に出すだけだとあまり意味ないので、他のコマンドと組み合わせましょう。検索しているファイルを開きたい場合は、open
コマンドと組み合わせて、
$ open $(fzf)
ファイルを選択してから、そのまま開けます。
もちろん、少ないファイルのディレクトリに実行すると、あまり魅力を感じないと思いますが、数百ファイルがあれば、かなり助かります。ファイルが多いと、普通のls
でもGUIから検索しても結構時間かかるので、ファジーファインダーから選択した方が楽です。
結論
fzf
はファジーファインダーで、ターミナルからのファイル検索をもっと楽できるし、他のコマンドと組み合わせるともっと効率化できます。
Disclaimer
※ 日本語は母語ではないので、どこかで間違ってたらすみません。