ほとんどのLinuxユーザーは、findコマンドとそれを使用できる多くのケースに精通しています。今日は、 fdと呼ばれるコマンドを見つけるための代替手段を確認します。 。
fd は、検索と比較して単純に高速に実行することを目的とした、シンプルで高速でユーザーフレンドリーなツールです。 。 検索を完全に置き換えることを意図したものではありません ですが、パフォーマンスが少し速くなる使いやすい代替手段を提供します。
fdの注目すべき機能のいくつか :
- 使いやすい構文– fd * pattern * find -iname * pattern *の代わりに 。
- lsコマンドの1つに似たカラフルな出力。
- 高速パフォーマンス。開発者のベンチマークはこちらから入手できます。
- デフォルトで大文字と小文字を区別しないスマート検索。パターンコンテナが大文字の場合は大文字と小文字を区別するように切り替えます。
- デフォルトでは隠しファイルと隠しディレクトリを検索しません。
- .gitignoreを調べません デフォルトで。
- Unicodeの認識。
Linuxにfdをインストールする方法
fdのインストール方法を見ていきます さまざまなLinuxディストリビューションで。
Ubuntuの場合 およびDebian ベースのディストリビューションでは、リリースページから最新のfdバージョンをダウンロードし、次のコマンドを使用してインストールする必要があります。
$ wget https://github.com/sharkdp/fd/releases/download/v7.3.0/fd-musl_7.3.0_amd64.deb $ sudo dpkg -i fd-musl_7.3.0_amd64.deb
他のLinuxディストリビューションでは、図のようにパッケージマネージャーを使用してデフォルトのリポジトリからfdをインストールできます。
# dnf install fd-find [On Fedora] # pacman -S fd [On Arch Linux] # emerge -av fd [On Gentoo] # zypper in fd [On OpenSuse]
Linuxでfdを使用する方法
検索コマンドと同様に、 fd 多くのユースケースがありますが、利用可能なオプションの確認から始めましょう:
# fd -h OR # fd --help


いくつかの例を見てみましょう。 fdを実行できます 引数がない場合、出力はls-Rコマンドと非常によく似ています。
# fd
次のfd 例として、/var/www/html/
にあるデフォルトのWordPressインストールを使用します さまざまなファイルやフォルダを検索します。
以下の例では、コマンドの出力を短くするために最初の10件の結果のみを取得しました。
# fd | head


すべてのjpgファイルを検索するとします。 “-e”
を使用できます ファイル拡張子でフィルタリングするフラグ:
# fd -e jpg


“-e”
フラグは、次のようなパターンと組み合わせて使用できます。
# fd -e php index
上記のコマンドは、拡張子が phpのファイルを検索します 文字列「インデックス」があります それらの中の」:


一部の結果を除外する場合は、“-E”
を使用できます。 このようなフラグ:
# fd -e php index -E wp-content
このコマンドは、文字列「 index 」を含む、php拡張子を持つすべてのファイルを検索します 」であり、「 wp-content」から結果を除外します 」ディレクトリ。


検索ディレクトリを指定する場合は、引数として指定するだけです。
# fd <pattery> <directory>


検索と同じように 、-x
を使用できます または--exec
検索結果と並列コマンド実行を実行するための引数。
chmodを使用する例を次に示します。 画像ファイルの権限を変更するには
# fd -e jpg -x chmod 644 {}
上記は、拡張子が jpgのすべてのファイルを検索します chmod 644 <path-to-file>
を実行します 。
角かっこの便利な説明と使用法は次のとおりです。
-
{}
–検索結果のパスによって変更されるプレースホルダー( wp-content / uploads / 01.jpg 。 {.}
–{}
に似ています 、ただしファイル拡張子は使用しません( wp-content / uploads / 01 。-
{/}
:検索結果のベース名に置き換えられるプレースホルダー(01.jpg 。 -
{//}
:検出されたパスの親ディレクトリ( wp-content / uploads 。 {/.}
:拡張子なしのベース名のみ( 01 。
結論
これは、fdコマンドの簡単なレビューでした。 、一部のユーザーは使いやすく、高速であると感じるかもしれません。この記事で前述したように、 fd 検索を完全に置き換えることを意図したものではありません 、しかしむしろ、単純な使用法、より簡単な検索、およびより良いパフォーマンスを提供します。 Fd スペースをあまりとらず、武器庫に入れるのに最適なツールです。