0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

高速なfindといえばfd

Posted at

メリークリスマス!開発環境を紹介します Advent Calendar 2024です。

今日も今日とて隙間産業。
本日紹介するのは、fd。
以前に高速なgrepとしてripgrepを紹介しましたが、今回は高速なfindになります。

fd

こちらも今更説明がいるのかと思うくらい有名なプロジェクトです。

findはご存知のとおり、ファイル検索コマンドです。
検索先と検索式を入力として受け取り、検索式にマッチするファイルを出力します。

fdはより高速でより使いやすいALT findとして生まれました。
例えばfindと比べてデフォルトで以下のように動作します。

  • globパターンではなく正規表現がデフォルト
  • 大文字小文字はスマートケースがデフォルト1
  • 出力の色付け
  • 隠しファイルを除外
  • gitignoreを認識して除外

実行例

インストール方法によりますが、コマンドfdまたはfd-findで使えます。
デフォルトでlsのような色付けがされます。
もちろん正規表現も使えます。

image.png

findとの速度比較

手元の環境にて、サイズ12GB、ファイル数330kほどのホームディレクトリで試しました。
検索するのはファイル名が4文字ピッタリのもの。
findの検索と同等にするため、fdにはオプションを付与しています。

image.png

  • find
    • 963.8 ms
  • ripgrep
    • 43.7 ms

実に21倍以上の差がついています。
はやい!

まとめ

fdの紹介でした。
findの代わりに高速なfdを使おう!

  1. 大文字小文字の差を基本的には無視するが、大文字始まりのアッパーキャメルを検索するときは大文字小文字を認識する。最近多いですね。

0
0
0

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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?