Linux で見つけるためのフレンドリーな代替手段 (fd コマンド)

Linux で見つけるためのフレンドリーな代替手段 (fd コマンド)

fd コマンドは、Linux ファイル システムを検索するためのシンプルで簡単な方法を提供します。

fd は、Unix/Linux の find コマンドに代わる、非常に高速な Rust ベースの代替コマンドです。 find の強力な機能のすべては提供されません。ただし、遭遇する可能性のある状況の 80% をカバーするのに十分な機能を提供します。よく計画された便利な構文、色付き出力、スマートな大文字小文字、正規表現、並列コマンド実行などの機能により、fd は非常に有能な後継となります。

インストール

fd GitHub ページにアクセスし、インストール セクションを参照してください。 macOS、Debian/Ubuntu Red Hat、Arch Linux にプログラムをインストールする方法について説明します。インストールが完了したら、help、簡潔なヘルプの場合は fd -h、より詳細なヘルプの場合は fd --help を実行して、使用可能なすべてのコマンドライン オプションの完全な概要を取得できます。

シンプル検索

fd は、ファイル システム内のファイルやフォルダーを簡単に見つけられるように設計されています。最も簡単な検索は、検索対象を 1 つの引数として指定して fd を使用することで実行できます。たとえば、ファイル名の一部に「services」という単語が含まれる Markdown ドキュメントを検索するとします。

$ fdサービス
ダウンロード/サービス.md

引数を 1 つだけ指定して呼び出された場合、fd は現在のディレクトリを再帰的に検索し、指定された引数に一致するファイルやディレクトリを探します。組み込みの find コマンドを使用した同等の検索は次のようになります。

$ find . -name 'サービス'
ダウンロード/サービス.md

ご覧のとおり、fd ははるかにシンプルで、入力する必要も少なくなります。より少ない入力でより多くのことを達成することは、私にとって常に正しいことです。

ファイルとフォルダ

-t パラメータの後に検索対象を表す文字を続けると、検索対象をファイルまたはディレクトリに制限できます。たとえば、現在のディレクトリ内でファイル名に services が含まれるすべてのファイルを検索するには、次のようにします。

$ fd -tf サービス
ダウンロード/サービス.md

そして、現在のディレクトリ内でファイル名に services が含まれるすべてのディレクトリを検索します。

$ fd -td サービス
アプリケーション/サービス
図書館/サービス

現在のフォルダー内の .md 拡張子を持つすべてのドキュメントを一覧表示するにはどうすればよいでしょうか?

$ fd .md
管理/管理.md
開発/elixir/elixir_install.md
読み物
サイドバー
linux.md

出力からわかるように、fd は現在のフォルダー内のファイルを検索して一覧表示できるだけでなく、サブフォルダー内のファイルも検索できます。とても簡単です。

-H スイッチを使用して隠しファイルを検索することもできます。

fd -H セッション。
.bash_セッション

ディレクトリを指定

特定のディレクトリを検索する場合は、ディレクトリ名を fd の 2 番目の引数として渡すことができます。

$ fd パスワード /etc
デフォルト
パスワード
/etc/passwd

この例では、fd に、etc ディレクトリで passwd という単語のすべてのインスタンスを検索するように指示します。

グローバル検索

ファイル名の一部はわかっているが、フォルダがわからない場合はどうすればよいでしょうか? Linux ネットワーク管理に関する本をダウンロードしたが、どこに保存されているかわからないとします。問題ない:

fd管理 /
/Users/pmullins/Documents/Books/Linux/Linux ネットワーク管理のマスター.epub

要約する

fd は find コマンドの優れた代替品であり、私と同じように皆さんにも便利だと感じていただけると思います。コマンドの詳細については、man ページを参照してください。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Linux の gettimeofday 関数を使用してプログラム セグメントの実行時間を取得する [推奨]
  • Linux での fdisk コマンドの使用法の詳細な説明
  • Linux におけるファイル記述子 fd とファイルポインタ FILE* 間の変換の分析例
  • Linux の新しい API signalfd、timerfd、eventfd の使用手順
  • Linux の timerfd_create を使用してタイマーを実装する例

<<:  React は antd のアップロード コンポーネントを使用してファイル フォーム送信機能を実装します (完全なコード)

>>:  写真とテキストによる MySQL 8.0.11 インストール チュートリアル

推薦する

MySQL 文字列分割操作 (区切り文字を含む文字列のインターセプション)

区切り文字なしの文字列抽出質問の要件データベース内のフィールド値:実装効果: 1行のデータを複数行に...

Vue3 における非親子コンポーネントの値転送の詳細な説明

目次アプリ.vueサブ1.vueサブ2.vue要約する vue2 における非親子コンポーネントの値の...

Vue はスクロール可能なポップアップウィンドウ効果を実装します

この記事では、スクロール可能なポップアップウィンドウ効果を実現するためのVueの具体的なコードを参考...

クエリでのMySQLのユニークキーの使用と関連する問題

1. テーブルステートメントを作成します。 テーブル「従業員」を作成します( `emp_no` in...

MySQLデータベースを使い始めるための最初のステップはテーブルを作成することです

データベースを作成する右クリック - 新しいデータベースを作成ライブラリ名を入力し、文字セットと並べ...

MySQL information_schema データベースの詳細な説明

1. 概要information_schema データベースは performance_schema...

jsオブジェクトの読み取り速度の詳細な例

1. リテラルとローカル変数へのアクセスは最も高速ですが、配列要素とオブジェクト メンバーへのアクセ...

JavaScript 上級プログラミング: 変数とスコープ

目次1. 元の値と参照値2. インスタンス3. 範囲1. 元の値と参照値6 つの単純なデータ型の値は...

MYSQL マスタースレーブ レプリケーションの知識ポイントの概要

単一の MYSQL サーバーが現在の Web サイトのトラフィックに対応できない場合の最適化ソリュー...

JavaScriptの基礎を学ぶ

目次1. JavaScriptを記述する場所2. JavaScriptでよく使われる入力文と出力文1...

CSS3 レーダースキャンマップのサンプルコード

CSS3 を使用して、クールなレーダースキャン画像を実現します。 コード上で直接: // インデック...

MySQL ストアド プロシージャの権限の問題の概要

MySQL ストアド プロシージャは、確かに、非常にまれな使用シナリオのように見えます。この問題は、...

mysql5.7 の新しい json フィールド タイプの使用例の分析

この記事では、MySQL 5.7 で追加された json フィールド タイプの使用方法を例を使って説...

JavaScript で配列の変更を監視する方法

序文以前、defineProperty を紹介したとき、オブジェクトの変更のみを監視でき、配列の変更...

CSS最適化スキルの自己実践体験

1. CSS スプライトを使用します。利点は、CSS で使用される小さな画像を 1 つの大きな画像に...