Linuxでファイルを見つける方法
著者:
Laura McKinney
作成日:
1 4月 2021
更新日:
1 J 2024
コンテンツ
この記事の内容:«find»を使用する«locate»を使用するファイル内のeを検索する記事の概要5参照
Linuxマシンでファイルを見つけるのは、その方法がわからないと難しい場合があります。ファイルを見つける最良の方法は、いくつかの異なる端末コマンドを使用することです。これらのコマンドをマスターすると、ファイルを完全に制御でき、他のオペレーティングシステムの単純な検索機能よりもはるかに強力です。
ステージ
方法1「検索」を使用する
-
ファイル名でファイルを探します。 これは、コマンドを使用して実行できる最も基本的な検索です 見つけます。以下のコマンドは、現在のフォルダーとサブフォルダーでクエリを検索します。find -iname "filename"
- 使用 -iname の代わりに -name クエリの大文字小文字を無視します。注文 -name 大文字と小文字が区別されます。
-
「ルート」フォルダーで検索を開始します。 システム全体を検索する場合は、修飾子を追加できます / ご要望に応じて。それがわかります 見つけます 「ルート」フォルダからすべてのディレクトリを検索します。find / -iname "filename"
- 置換することにより、特定のフォルダで検索を開始できます/ ディレクトリのパスで /ホーム/パット.
- 使用できます . の代わりに / 現在のフォルダーとそのサブフォルダーでのみ強制的に検索を実行します。
-
ワイルドカードを使用します。* そのクエリの一部に一致するものを探すために。 置換文字 * フルネームがわからないものを検索する場合、または特定の拡張子を持つものを検索する場合に便利です。find / home / pat -iname "* .conf"
- これにより、すべてのfiles.confがPatのユーザーフォルダー(およびそのサブフォルダー)に返されます。
- また、ファイル名の一部に対応するものを見つけるためにも使用できます。たとえば、に関連するドキュメントが多数ある場合は、次のように入力すると、それらを一度に見つけることができます。 「* Wiki *」.
-
検索結果を管理しやすくします。 多くの検索結果が表示される場合、閲覧するのが難しい場合があります。キャラクターを使う | 検索結果を「少ない」フィルタリングソフトウェアに送信します。結果をスクロールして、より簡単にフィルタリングできます。find / home / pat -iname "* .conf" |レス
-
特定の種類の結果を探します。 修飾子を使用して、特定のタイプの結果のみを返すことができます。通常のファイルを検索できます(F)、ディレクトリ(D)、シンボリックリンク(リットル)、キャラクターデバイス(C)およびブロッキングデバイス(B)適切な修飾子を使用します。find / -type f -iname "filename"
-
検索結果をサイズでフィルタリングします。 類似した名前のファイルが多数あるが、探しているサイズがわかっている場合は、サイズで結果をフィルタリングできます。find / -size + 50M -iname "filename"
- これにより、50メガバイト以上の結果が返されます。使用できます + 若しくは - 大きいサイズまたは小さいサイズを探します。忘れて + または - 作成するファイルを検索します 丁度 指定されたサイズ。
- 番号ドクテット(C)、キロバイト(K)、メガバイト(M)、ギガバイト(G)、または512バイトのブロック(B)。サイズタグでは大文字と小文字が区別されることに注意してください。
-
ブール演算子を使用して、検索フィルターを組み合わせます。 演算子を使用できます -and, -or と -not さまざまなタイプの検索を1つに結合します。find / photosdevacances -type f -size + 200k -not -iname "* 2015 *"
- 上記のコマンドは、「photospeed」ディレクトリ内で200キロバイトより大きいが、ファイル名に「2015」を含まないファイルを検索します。
-
所有者または許可によってファイルを探します。 所有者が特定のユーザーである特定のファイル、または特定の権限を持つファイルを検索しようとする場合、検索ボックスを絞り込むことができます。find / -user pat -iname "filename" find / -group users -iname "filename" find / -perm 777 -iname "filename"
- 上記の例では、クエリで指定されたユーザー、グループ、または権限を検索します。返される要求されたタイプに一致するすべてのファイルを表示するために、探しているファイルの名前を指定しないこともできます。たとえば、 find / -perm 777 777のアクセス許可を持つすべてのファイルを返します(制限なし)。
-
ファイルが見つかったときにアクションを実行するコマンドを組み合わせます。 コマンドを組み合わせることができます 見つけます クエリによって返されたファイルで実行できるように、他のコマンドを使用します。注文を分ける 見つけます タグによる2番目のコマンド -exec、それから行を終了します ;- これにより、現在のフォルダー(およびそのすべてのサブフォルダー)で777のアクセス許可を持つファイルの検索が開始され、コンソールは次のコマンドを使用します。 chmodコマンド 許可を755に変更します。
方法2「locate」を使用する
-
機能をインストールします。見つけます。注文 見つけます 通常よりもはるかに高速に動作します 見つけますファイルの構造からデータベースを使用して機能するためです。すべてのLinuxディストリビューションに機能が付属しているわけではありません 見つけます インストールされているので、次のコマンドを入力してインストールします。- タイプ sudo apt-get update を押す エントリー.
- タイプ sudo apt-get install mlocate を押す エントリー。もし 見つけます が既にインストールされている場合、受信します mlocateはすでに最新バージョンです.
-
データベースを更新します。見つけます。注文 見つけます データベースが構築および更新されるまで、何も見つかりません。これは毎日自動的に行われますが、手動で更新を開始することもできます。あなたが使い始めたいなら、あなたはそれをしなければならないでしょう 見つけます すぐに。- タイプ sudo updatedb を押す エントリー.
-
使用します。見つけます 簡単な検索を行います。 注文 見つけます 高速ですが、コマンドとしてオプションがありません 見つけます。コマンドと同じ方法で基本的なファイル検索を多少リンクできます 見つけます.-i "* .jpg"を見つけます
- このコマンドは、拡張子を持つファイルを検索します .JPG すべてのマシンで。置換文字 * コマンドと同じように動作します 見つけます.
- ご注文は 見つけます、 -i クエリの大文字小文字を無視します。
-
検索結果を制限します。 クエリで送信する結果が多すぎて管理できない場合は、オプションを使用してそれらの一部を削除できます -n表示する結果の数が続きます。Locate -n 20 -i "* .jpg"
- クエリに対応する最初の20の結果のみが表示されます。
- また、のlastuceを使用することができます | 結果を送信する レス より簡単に閲覧できます。
方法3ファイルでeを検索する
-
コマンドを使用します。グレップ ファイル内の文字シーケンスを検索します。 特定の文または一連の文字を含むファイルを探している場合は、次のコマンドを使用できます グレップ。基本的な順序 グレップ 次の形式を取ります。grep -r -i "リクエスト" /パス/へ/ディレクトリ/
- オプション-r 検索を「再帰的」に設定し、検索を「再帰的」にするので、現在のフォルダーとそのすべてのサブフォルダーでクエリの文字シーケンスを含むファイルを検索します。
- オプション -i クエリで大文字と小文字が区別されないことを示します。検索で大文字と小文字を区別する場合は、演算子を入れないでください -i.
-
余分なeを削除します。 で検索するとき グレップ 上記のように、検索に対応するeの横に強調表示されるファイルの名前が表示されます。以下を含めることにより、対応するeを非表示にし、ファイル名とそのパスを単に表示できます。grep -r -i "request" / path / to /ディレクトリ/ |カット-d:-f1
-
エラーを非表示にします。 注文 グレップ 適切な権限なしでフォルダにアクセスしようとしたとき、または空のフォルダを起動しようとしたときにエラーが返されます。エラーを/ dev / nullに返すことができます。これにより、出力表示からエラーが非表示になります。grep -r -i "リクエスト" /パス/ to /ディレクトリ/ 2> / dev / null