8
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

HameeAdvent Calendar 2018

Day 19

ファイル検索をもっと楽にしましょう

Last updated at Posted at 2018-12-18

FzFとは

Fzf (Fuzzy Finder) はコマンドライン用のファジーファインダー(あいまい検索)ツールです。
ファジー理論はここで説明しないですが、goo辞書からファジーの簡単な意味を引用させていただきます。

(1)境界が不明確であること。あいまいであること。柔軟性があること。また、そのさま。「ファジーな考え方」
(2) 人間の認識のあいまいな部分をコンピューターで処理する技術。

Google検索バーで文字を入力始まると、候補が下部に出てくるような感じです。

FzFのインストール

Githubからインストールできますし

https://github.com/junegunn/fzf

Homebrewから直接インストールも可能です。

$ brew install fzf

FzFを実行してみましょう

インストールを完了したら、早速実行してみましょう。例のために似たような名のいくつファイルを用意しました。
list.png

では、fzfを実行してみましょう。

$ fzf 

ファイルは以下のようにリスト化されます。
fzf1.png

ここでファジーの方が始まります。検索結果を絞るために、文字も入力できます。例えば、example2.txtをを出力したい場合は、まずexampleから入力すると
fzf2.png

当てはまる候補ファイル名に絞られます。ここからマウスやキーボードでファイルを選択できます。適切なファイル名にたどり着いたらENTERキーを押すと標準出力に表示されます。
fzf4-2.png

ファジーファインダーだから、ファイル名に入力されている文字が存在したら、候補として表示されます。
fzf3.png

いい感じですね。

FzFが便利になる場合

標準出力に出すだけだとあまり意味ないので、他のコマンドと組み合わせましょう。検索しているファイルを開きたい場合は、openコマンドと組み合わせて、

$ open $(fzf)

ファイルを選択してから、そのまま開けます。

もちろん、少ないファイルのディレクトリに実行すると、あまり魅力を感じないと思いますが、数百ファイルがあれば、かなり助かります。ファイルが多いと、普通のlsでもGUIから検索しても結構時間かかるので、ファジーファインダーから選択した方が楽です。

結論

fzfはファジーファインダーで、ターミナルからのファイル検索をもっと楽できるし、他のコマンドと組み合わせるともっと効率化できます。

Disclaimer

※ 日本語は母語ではないので、どこかで間違ってたらすみません。

8
4
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?