Linuxターミナルは複雑に見えるテキストインターフェイスですが、実際には非常に柔軟性があり、使いやすく、非常に便利なツールです。コマンドはオンラインソースから簡単にコピーして端末に貼り付け、さまざまな操作を実行できます。たくさんのコマンドがありますが、この投稿ではfindコマンドに焦点を当てます。
findコマンドは、ユーザーが指定した条件に従ってシステム内のファイルやフォルダーを検索、フィルタリング、または検索し、それらに対していくつかの操作を実行するために使用されます。
findコマンドの使用方法、その構文、およびこのコマンドによって実行されるさまざまな操作について詳しく説明します。
Linuxでのfindコマンドの構文
findコマンドの構文を以下に示します。
探す [道] [オプション] [表現]
findコマンドには次の3つの属性があります。
- [パス]:検索を開始するディレクトリを定義します。
- [オプション]:フィルタリングの基準を定義します。名前、権限、時刻、または日付でファイル/フォルダーを検索します。
- [式]:ファイルに対して実行するアクションを定義します。
上記の属性はすべて、要件に応じて使用できるため、オプションです。
デモンストレーションのために、さまざまなディレクトリといくつかのテキストファイルを作成しました。下の画像を参照してください。
名前によるファイルの検索
ファイルを名前で検索するには、以下のコマンドを使用します。
$探す。-名前MyTextFile1.txt
上記のコマンドのfindの後のドットは、現在のディレクトリを示します。
正確なファイル名を覚えていない場合は、名前の代わりに-inameを使用することで、検索をさらに絞り込み、大文字と小文字を区別しないようにすることができます。
$探す。-inamemytextfile1.txt
タイプによるファイルの検索
タイプでファイルを検索するには、ファイルの場合はf、ディレクトリの場合はd、シンボリックリンクの場合はl、ソケットの場合はsなど、記述子とも呼ばれる文字を指定して-typeオプションを使用します。
すべてのディレクトリを検索するには、次を使用します。
$探す。-タイプNS
ファイルを検索するには、次を使用します。
$探す。-タイプNS
ファイル拡張子によるファイルの検索
すべてのファイルを.txtで表示するなど、ファイル拡張子などのパターンでファイルを検索するには、次のコマンドを使用します。
$探す。-名前 *。txt
.txtの付いたすべてのファイルが、対応するディレクトリとともに表示されます。
ファイルの検索と削除
ファイルを検索して削除するには、次のコマンドを使用します。
$探す。-inamemytextfile1.txt-exec rm {{};
上記のコマンドは、最初にファイルを検索してから削除します。この画像は、MyTextFile1が削除されたことを示しています。
拡張子が.txtのすべてのファイルを削除するには、次のコマンドを使用できます。
$探す。-名前 *。txt-消去
サイズによるファイルの検索
findコマンドは、ファイルをサイズで検索することもできます。 -sizeオプションを、512 Kbブロックの場合はb、バイトの場合はc、キロバイトの場合はk、メガバイトとギガバイトの場合はそれぞれMとGなどの記述子とともに使用するだけです。
$探す。-タイプNS-サイズ -1024c
上記のコマンドは、1024バイト未満のサイズのすべてのファイルを検索します。検索をさらに絞り込むことができます。たとえば、1Mb未満のすべてのファイルを検索する場合は、次のコマンドを使用します。
$探す。-タイプNS-サイズ1M
1Mbを超えるすべてのファイルについて、以下のコマンドを使用します。
$探す。-タイプNS-サイズ+ 1M
追加のコマンドを使用して、サイズの範囲を定義することもできます。
$探す。 -タイプNS-サイズ+ 1M-サイズ10M許可によるファイルの検索
許可によってファイルを検索するには、以下に示すように、-permオプションを使用してから、許可コードを使用します。
$探す。-パーマ 664
テキストファイル内のテキストを検索する
システム内の複数のテキストファイルでテキストを検索するには、以下のコマンドを使用します。
$探す。-タイプNS-名前 *。txt-exec グリップ'こんにちは'{{};
このコマンドは、テキストファイル内のHelloワードを検索しています。出力は、Helloを含むテキストファイルからのテキスト文字列です。
変更日時によるファイルの検索
最終変更でファイルにアクセスするには、次のコマンドを使用します。
$探す。-タイプNS-iname *。txt-mmin+10
上記のコマンドは、4分前に最後に変更されたファイルを検索しており、mは変更を示します。
$探す。 -タイプNS-iname *。txt-にいる -10
上記のコマンドは、4分前に最後にアクセスされたファイルを検索しており、a minはAccessを示しています。 4日前に変更されたファイルにアクセスするには、mmin + 4の代わりに-mtime + 4を使用します。
結論
Linuxのfindコマンドは、さまざまな基準を使用してファイルまたはディレクトリを検索できる非常に便利なコマンドであり、ターミナルからファイルを変更することもできます。このガイドでは、Linuxでのfindコマンドの構文を観察し、findコマンドを使用してさまざまな機能を実行する方法を学習しました。