このチュートリアルのfindコマンドの使用方法をアーカイブから学びます。

優れたLinuxデスクトップ環境では、ファイルシステムでファイルやフォルダを検索する機能が提供されることは言うまでもありません。 場合はデフォルトのデスクトップなのでこれはLinuxできるものをインストールアプリを探しディレクトリ階層にしたりする方におすすめです。

しかし、コマンドラインはどうですか?, コマンドラインで頻繁に作業したり、GUIレスのLinuxサーバーを管理したりする場合、ファイルを見つける必要があるときはどこを向けますか? 幸いなことに、Linuxはあなたが問題のファイルを見つけるために必要なものを正確に持っています。

問題のコマンドはfindです。 このコマンドの理解をさらに魅力的にするために、一度それを知っていれば、Bashスクリプトにそれを取り入れ始めることができます。 それは利便性だけでなく、それが力です。,

GUIを必要とせずに、Linuxサーバーやデスクトップ上のファイルを検索する制御を取ることができるように、findコマンドを使用してスピードアップしましょ

findコマンドの使い方

私が最初にLinuxを垣間見たとき、1997年に、私はfindコマンドがどのように機能するかをよく理解していませんでした。 コマンドfind FILENAME(FILENAMEはファイルの名前です)を発行し、コマンドはファイルを見つけて報告するはずでした。 私はそれよりもコマンドに多くがあったことを少し知りました。 はるかに。,

コマンドman findを発行すると、findコマンドの構文が次のようになります。

find 

当然、manの仕組みに慣れていない場合は、その構文に混乱したり圧倒されたりする可能性があります。 理解を容易にするために、それを単純化しましょう。 基本的なfindコマンドの最も基本的な構文は次のようになります。

find /path option filename

今、私たちは仕事でそれを見るでしょう。

名前で検索

できるだけ明確にするために、その基本的なコマンドを分解してみましょう。, Findコマンドの最も単純な構造には、ファイルのパス、オプション、およびファイル名自体を含める必要があります。 あなたは、”ファイルへのパスを知っていれば、それを見つける場所をすでに知っているでしょう!”. まあ、ファイルのパスはあなたのドライブのルートである可能性があります。/は正当なパスになります。 あなたのパスとしてそれを入力すると、findが処理するのに時間がかかります—最初から始めなければならないので—しかし、ファイルがどこにあるのか 効率の名の下に、少なくともどこで検索を開始するかを考えることが常に最善です。,

コマンドの次のビットはオプションです。 ほとんどのLinuxコマンドと同様に、利用可能なオプションがいくつかあります。 しかし、私たちは最初から始めているので、簡単にしましょう。 名前でファイルを見つけようとしているので、二つのオプションのいずれかを使用します。

  • name–case sensitive

  • iname–case insensitive

Linuxは大文字小文字を区別しないので、Linuxという名前のファイルを探しているなら、Linuxを覚えておいてください。odtでは、次のコマンドは結果を返しません。,

find / -name linux.odt

ただし、-inameオプションを使用してコマンドを変更する場合、findコマンドは大文字と小文字に関係なくファイルを検索します。 したがって、新しいコマンドは次のようになります。

find / -iname linux.odt

タイプで検索

名前でファイルを検索することにそれほど関心がなく、特定のタイプのすべてのファイルを検索する場合はどうなりますか?, より一般的なファイルディスクリプタのいくつかは次のとおりです。

  • f–通常のファイル

  • d–ディレクトリ

  • l–シンボリックリンク

  • c文字デバイス

  • b–ブロックデバイス

ここで、すべてのブロックデバイス(ファイルディスクリプタ)を探したいとします。それはあなたのシステム上のデバイスを指します。, -Typeオプションの助けを借りて、次のようにすることができます。

find / -type c

上記のコマンドはかなり多くの出力をもたらします(許可が拒否されたことを示す多く)が、

/dev/hidraw6/dev/hidraw5/dev/vboxnetctl/dev/vboxdrvu/dev/vboxdrv/dev/dmmidi2/dev/midi2/dev/kvm

Voilà! ブロックデバイス。

同じオプションを使用して、設定ファイルを探すことができます。 たとえば、で終わるすべての通常のファイルを検索したいとします。confの拡張子。, このコマンドは次のようになります。

find / -type f -name "*.conf"

上記のコマンドは、ディレクトリ構造全体をトラバースして、終わるすべての通常のファイルをコンフ 設定ファイルのほとんどが/etcに格納されていることがわかっている場合は、次のように指定できます。

find /etc -type f -name "*.conf”

上記のコマンドは、すべてのコマンドをリストします。/etcからのconfファイル(図1)。

図1:すべての設定ファイルを/etcに配置します。,

結果をファイルに出力する

本当に便利なトリックは、検索の結果をファイルに出力することです。 出力が広範囲である可能性があることがわかっている場合、または後で結果を調べたい場合は、これは非常に役立ちます。 このためには、上記と同じ例を使用し、結果をconf_searchというファイルにパイプします。 この新しいコマンドは次のようになります。

find /etc -type f -name "*.conf” > conf_search

これで、発行されたfindコマンドのすべての結果を含むファイル(conf_search)が得られます。,

サイズでファイルを見つける

これで、findコマンドが非常に役に立つ瞬間になります。 またインスタンスがデスクトップやサーバはそのドライブに不思議。 スペースをすばやく作成する(または問題の特定に役立つ)には、findコマンドを使用して特定のサイズのファイルを検索できます。 たとえば、大きくして1000MBを超えるファイルを見つけたいとします。 Findコマンドは、-sizeオプションの助けを借りて、次のように発行できます。

find / -size +1000MB

ファイルの数に驚くかもしれません。, コマンドからの出力を使用すると、ディレクトリ構造を介して櫛とスペースを解放したり、神秘的にあなたのドライブを埋めているものを見つけるた

次のサイズの説明で検索できます。

  • cバイト

  • kキロバイト

  • Mメガバイト

  • Gギガバイト

  • b–512バイトのブロック

学習を続ける

私たちはfindコマンドの表面を傷つけただけですが、linuxシステム上のファイルを見つける方法について基本的な理解が得られました。, この強力なツールをあなたのために働かせる方法についてのより深く、より完全な知識を得るために、コマンドマンfindを発行してください。

Linux FoundationおよびedXの無料の”Introduction to Linux”コースを通じて、Linuxについての詳細を学びます。