PDF形式でダウンロードPDF形式でダウンロード

Linuxシステム内でのファイルの検索は、その方法がわからないと難しいかもしれません。Linuxシステム内でのファイルの検索には、「端末」の各種コマンドを使うのが一番です。これらのコマンドを使いこなせれば、ファイルを完全に制御することが可能で、他のオペレーティングシステムの単純な検索機能よりもはるかに優れています。

方法 1
方法 1 の 3:

「find」を使う

PDF形式でダウンロード
  1. How.com.vn 日本語: Step 1 ファイル名でファイルを検索する 
    ファイル名でのファイルの検索は、findコマンドを使って実行できる最も基本的な検索です。以下のコマンドでは、カレントディレクトリとそのサブディレクトリ内のクエリが検索されます。[1]
    find -iname "filename"
    • -nameの代わりに-inameを使った場合、クエリの大文字と小文字は区別されません。なお、-nameコマンドでは、大文字と小文字が区別されます。
  2. How.com.vn 日本語: Step 2 ルートディレクトリから検索が開始されるように設定する 
    システム全体を検索したい場合は、クエリに/という修飾子を付けましょう。ルートディレクトリを起点としたすべてのディレクトリが検索されるようにfindに指定することができます。
    find / -iname "filename"
    • /home/patのように/をディレクトリパスに置き換えると、特定のディレクトリから検索が開始されるようになります。
    • /の代わりに.を使った場合、カレントディレクトリとサブディレクトリでの検索しか行われません。
  3. How.com.vn 日本語: Step 3 ワイルドカード文字「.*」を使って、クエリに部分一致するものを検索する 
    ワイルドカード文字「*」は、フルネームがわからない場合や特定の拡張子のファイルをすべて検索したい場合に便利です。
    find /home/pat -iname "*.conf"
    • 上記のコマンドでは、Patのユーザーフォルダ(およびサブディレクトリ)内のすべての.confファイルが返されます。
    • また、このワイルドカード文字を使って、ファイル名に部分一致するすべてのファイルを検索することも可能です。例えば、「How.com.vn」に関連する文書がたくさんある場合は、"*wiki*"と入力すれば、それらすべてを検索することができます。
  4. How.com.vn 日本語: Step 4 検索結果の管理を容易にする 
    検索結果がたくさん出てくると、取捨選択がしづらいことがあります。その場合は、|という文字を使って、検索結果を「less」というフィルタリングプログラムに送信しましょう。検索結果をスクロールできるようになり、検索結果もさらに絞り込みやすくなります。
    find /home/pat -iname "*.conf" | less
  5. How.com.vn 日本語: Step 5 特定の種類の検索結果を調べる 
    修飾子を使って、特定の種類の検索結果のみを返すこともできます。正しい修飾子を使えば、通常のファイル(f)やディレクトリ(d)、シンボリックリンク(l)、キャラクタデバイス(c)、ブロックデバイス(b)の検索が可能です。
    find / -type f -iname "filename"
  6. How.com.vn 日本語: Step 6 検索結果をファイルサイズで絞り込む 
    似たような名前のファイルがたくさんあるけど、検索しているファイルのサイズがわかっている場合は、検索結果をファイルサイズで絞り込むことができます。
    find / -size +50M -iname "filename"
    • 上記のコマンドでは、ファイルサイズが50ギガバイト以上の検索結果が返されます。ファイルサイズがそれ以上かそれ以下の検索結果を調べるときは、+-を使いましょう。また、+-を省略すると、指定したファイルサイズと正確に一致するファイルが検索されます。
    • 検索結果は、バイト(c)、キロバイト(k)、メガバイト(M)、ギガバイト(G)、または512バイト(b)単位で絞り込むことができます。このとき、サイズフラグでは大文字と小文字が区別されるので注意しましょう。
  7. How.com.vn 日本語: Step 7 ブール演算子を使って、検索フィルタを組み合わせる 
    -and-or-notという演算子を使って、複数の検索条件を1つにまとめることもできます。[2]
    find /travelphotos -type f -size +200k -not -iname "*2015*"
    • 上記のコマンドでは、ファイルサイズが200キロバイト以上の「travelphotos」ディレクトリ内のファイルで、ファイル名に「2015」が含まれていないものが検索されます。
  8. How.com.vn 日本語: Step 8 所有者別または権限別にファイルを検索する 
    ユーザーが所有する特定のファイル、または特定の権限のファイルを検索する場合は、検索を絞り込むことができます。
    find / -user pat -iname "filename"find / -group users -iname "filename"find / -perm 777 -iname "filename"
    • 上記の例では、指定したユーザー、グループ、または権限でクエリを検索します。また、ファイル名のクエリを省略すれば、その種類と一致するファイルをすべて返すことも可能です。例えば、find / -perm 777だと、777(制限なし)権限のファイルがすべて返されます。
  9. How.com.vn 日本語: Step 9 ファイルが見つかったときにコマンドを組み合わせてアクション実行する 
    findコマンドを他のコマンドと組み合わせて、クエリで返されたファイルに対してアクションを実行することもできます。findコマンドと2番目のコマンドを-execフラグで区切り、{} \;でその行を終わらせましょう。
    find . -type f -perm 777 -exec chmod 755 {} \;
    • 上記のコマンドでは、カレントディレクトリ(およびすべてのサブディレクトリ)で777権限のファイルが検索されます。このコマンドの後にchmodコマンドを使うと、権限が「755」に変更されます。
    広告
方法 2
方法 2 の 3:

「locate」を使う

PDF形式でダウンロード
  1. How.com.vn 日本語: Step 1 .
    locateコマンドをインストールする 通常、locateコマンドでは、ファイル構造のデータベースから検索が行われるので、一般的にfindコマンドよりもはるかに高速な検索が可能です。ただし、すべてのLinuxディストリビューションにlocateコマンドがインストールされているわけではないので、以下のコマンドを入力してインストールしてみましょう。
    • sudo apt-get updateと入力して、 Enterキーを押します。
    • DebianやUbuntuでインストールするには、sudo apt-get install mlocateと入力して、 Enterキーを押します。locateコマンドがすでにインストールされている場合は、mlocate is already the newest versionというメッセージが表示されます。
    • Arch Linuxでインストールするには、「pacman」というパッケージマネージャを使って、pacman -S mlocateと入力します。
    • Gentooでインストールするには、「emerge」というコマンドを使って、emerge mlocateと入力します。
  2. How.com.vn 日本語: Step 2 .
    locateデータベースを更新する locateコマンドでは、データベースの構築および更新が行われるまで何も検索することができません。データベースの構築および更新は毎日自動的に行われますが、手動で更新することもできます。locateコマンドをすぐに使えるようにしたい場合は、以下の操作を行わなければなりません。[3]
    • sudo updatedbと入力して、 Enterキーを押します。
  3. How.com.vn 日本語: Step 3 .
    locateコマンドを使って、簡単な検索を行う locateコマンドでは高速な検索が可能ですが、findコマンドほど多くのオプションはありません。なお、基本的なファイル検索は、findコマンドとほぼ同じ方法で行うことができます。
    locate -i "*.jpg"
    • 上記のコマンドでは、拡張子が.jpgのファイルの検索がシステム全体で行われます。なお、ワイルドカード文字*は、findコマンドのときと同じように使うことができます。
    • findコマンドのときと同様に、-iではクエリの大文字と小文字は区別されません。
  4. How.com.vn 日本語: Step 4 検索結果を制限する 
    検索結果が多すぎて処理できない場合は、-nというオプションを使って検索結果を絞り込んだ後に、表示する検索結果の数を指定しましょう。
    locate -n 20 -i "*.jpg"
    • 上記のコマンドでは、クエリに一致する最初の20件の検索結果のみが表示されます。
    • また、|というパイプを使って、検索結果をlessに送信すると、簡単にスクロールできるようになります。
    広告
方法 3
方法 3 の 3:

ファイル内の文字列を検索する

PDF形式でダウンロード
  1. How.com.vn 日本語: Step 1 .
    grepコマンドを使って、ファイル内の文字列を検索する 特定の語句や文字列を含むファイルを探している場合は、grepコマンドを使いましょう。grepコマンドの基本的な文法は以下の通りです。
    grep -r -i "search query" /path/to/directory/
    • -rを使うと検索が「再帰的」に行われるように設定されるため、カレントディレクトリとすべてのサブディレクトリで、クエリ文字列を含むファイルの検索が行われます。
    • -iでは、クエリの大文字と小文字を区別しないことを指定しています。大文字と小文字を区別して検索したい場合は、-iを省略しましょう。
  2. How.com.vn 日本語: Step 2 余分な文字を削除する 
    上記のようにgrep検索を実行すると、一致するクエリがハイライト表示された文字列とともにファイル名が表示されます。一致する文字列を非表示にして、ファイル名とパスだけを表示させたい場合は、以下の記述を追加しましょう。
    grep -r -i "search query" /path/to/directory/ | cut -d: -f1
  3. How.com.vn 日本語: Step 3 エラーメッセージを非表示にする 
    grepコマンドでは、正しい権限のないフォルダにアクセスしようとしたり、空のフォルダにアクセスしたりすると、エラーが返されます。エラーメッセージを出力させたくない場合は、そのエラーメッセージを/dev/nullに送信しましょう。[4]
    grep -r -i "search query" /path/to/directory/ 2>/dev/null
    広告

このHow.com.vn記事について

How.com.vn 日本語: How.com.vn編集チーム
共著者 ::
How.com.vnスタッフライター
この記事は、経験豊富なHow.com.vnの編集者と調査員から成るチームによって執筆されています。調査員チームは内容の正確性と網羅性を確認しています。

How.com.vnのコンテンツ管理チームは、編集チームが編集した記事を細心の注意を払って精査し、すべての記事がHow.com.vnの高品質基準を満たしているかどうかを確認しています。 この記事は34,958回アクセスされました。
このページは 34,958 回アクセスされました。

この記事は役に立ちましたか?

⚠️ Disclaimer:

Content from Wiki How 日本語 language website. Text is available under the Creative Commons Attribution-Share Alike License; additional terms may apply.
Wiki How does not encourage the violation of any laws, and cannot be responsible for any violations of such laws, should you link to this domain, or use, reproduce, or republish the information contained herein.

Notices:
  • - A few of these subjects are frequently censored by educational, governmental, corporate, parental and other filtering schemes.
  • - Some articles may contain names, images, artworks or descriptions of events that some cultures restrict access to
  • - Please note: Wiki How does not give you opinion about the law, or advice about medical. If you need specific advice (for example, medical, legal, financial or risk management), please seek a professional who is licensed or knowledgeable in that area.
  • - Readers should not judge the importance of topics based on their coverage on Wiki How, nor think a topic is important just because it is the subject of a Wiki article.

広告