Linuxでfindコマンドを使用してファイルを検索する方法は?

How Use Find Command Linux Search Files



Linuxユーザーの場合、さまざまなタスクを実行するためにGUIだけに頼ることはできないため、ターミナルコマンドをしっかりと把握することが非常に重要です。 Linuxに基づくすべてのディストリビューションは、コマンドを実行してさまざまな管理タスクを実行します。

Linuxターミナルは複雑に見えるテキストインターフェイスですが、実際には非常に柔軟性があり、使いやすく、非常に便利なツールです。コマンドはオンラインソースから簡単にコピーして端末に貼り付け、さまざまな操作を実行できます。たくさんのコマンドがありますが、この投稿ではfindコマンドに焦点を当てます。







findコマンドは、ユーザーが指定した条件に従ってシステム内のファイルやフォルダーを検索、フィルタリング、または検索し、それらに対していくつかの操作を実行するために使用されます。



findコマンドの使用方法、その構文、およびこのコマンドによって実行されるさまざまな操作について詳しく説明します。



Linuxでのfindコマンドの構文

findコマンドの構文を以下に示します。





探す [] [オプション] [表現]

findコマンドには次の3つの属性があります。

  • [パス]:検索を開始するディレクトリを定義します。
  • [オプション]:フィルタリングの基準を定義します。名前、権限、時刻、または日付でファイル/フォルダーを検索します。
  • [式]:ファイルに対して実行するアクションを定義します。

上記の属性はすべて、要件に応じて使用できるため、オプションです。



デモンストレーションのために、さまざまなディレクトリといくつかのテキストファイルを作成しました。下の画像を参照してください。

find / 1%20copy.png

名前によるファイルの検索

ファイルを名前で検索するには、以下のコマンドを使用します。

$探す-名前MyTextFile1.txt

find / 2%20copy.png

上記のコマンドのfindの後のドットは、現在のディレクトリを示します。

正確なファイル名を覚えていない場合は、名前の代わりに-inameを使用することで、検索をさらに絞り込み、大文字と小文字を区別しないようにすることができます。

$探す-inamemytextfile1.txt

find / 3%20copy.png

タイプによるファイルの検索

タイプでファイルを検索するには、ファイルの場合はf、ディレクトリの場合はd、シンボリックリンクの場合はl、ソケットの場合はsなど、記述子とも呼ばれる文字を指定して-typeオプションを使用します。

すべてのディレクトリを検索するには、次を使用します。

$探す-タイプNS

find / 4%20copy.png

ファイルを検索するには、次を使用します。

$探す-タイプNS

c%20copy.png

ファイル拡張子によるファイルの検索

すべてのファイルを.txtで表示するなど、ファイル拡張子などのパターンでファイルを検索するには、次のコマンドを使用します。

$探す-名前 *。txt

find / 5%20copy.png

.txtの付いたすべてのファイルが、対応するディレクトリとともに表示されます。

ファイルの検索と削除

ファイルを検索して削除するには、次のコマンドを使用します。

$探す-inamemytextfile1.txt-exec rm {{};

find / 6%20copy.png

上記のコマンドは、最初にファイルを検索してから削除します。この画像は、MyTextFile1が削除されたことを示しています。

拡張子が.txtのすべてのファイルを削除するには、次のコマンドを使用できます。

$探す-名前 *。txt-消去

find / 7%20copy.png

サイズによるファイルの検索

findコマンドは、ファイルをサイズで検索することもできます。 -sizeオプションを、512 Kbブロックの場合はb、バイトの場合はc、キロバイトの場合はk、メガバイトとギガバイトの場合はそれぞれMとGなどの記述子とともに使用するだけです。

$探す-タイプNS-サイズ -1024c

find / 8%20copy.png

上記のコマンドは、1024バイト未満のサイズのすべてのファイルを検索します。検索をさらに絞り込むことができます。たとえば、1Mb未満のすべてのファイルを検索する場合は、次のコマンドを使用します。

$探す-タイプNS-サイズ1M

ab / a%20copy.png

1Mbを超えるすべてのファイルについて、以下のコマンドを使用します。

$探す-タイプNS-サイズ+ 1M

ab / b%20copy.png

追加のコマンドを使用して、サイズの範囲を定義することもできます。

$探す。 -タイプNS-サイズ+ 1M-サイズ10M

許可によるファイルの検索

許可によってファイルを検索するには、以下に示すように、-permオプションを使用してから、許可コードを使用します。

$探す-パーマ 664

find / 10%20copy.png

テキストファイル内のテキストを検索する

システム内の複数のテキストファイルでテキストを検索するには、以下のコマンドを使用します。

$探す-タイプNS-名前 *。txt-exec グリップ'こんにちは'{{};

find / 12%20copy.png

このコマンドは、テキストファイル内のHelloワードを検索しています。出力は、Helloを含むテキストファイルからのテキスト文字列です。

変更日時によるファイルの検索

最終変更でファイルにアクセスするには、次のコマンドを使用します。

$探す-タイプNS-iname *。txt-mmin+10

find / 13%20copy.png

上記のコマンドは、4分前に最後に変更されたファイルを検索しており、mは変更を示します。

$探す。 -タイプNS-iname *。txt-にいる -10

find / 14%20copy.png

上記のコマンドは、4分前に最後にアクセスされたファイルを検索しており、a minはAccessを示しています。 4日前に変更されたファイルにアクセスするには、mmin + 4の代わりに-mtime + 4を使用します。

結論

Linuxのfindコマンドは、さまざまな基準を使用してファイルまたはディレクトリを検索できる非常に便利なコマンドであり、ターミナルからファイルを変更することもできます。このガイドでは、Linuxでのfindコマンドの構文を観察し、findコマンドを使用してさまざまな機能を実行する方法を学習しました。