\r\n\r\n
Linuxのファイルシステムで特定のディレクトリをお探しですか?幸いなことに、検索ツールはたくさんあります。ここでは、簡単に使えるいくつかのオプションと、それらを使って効率的にフォルダを検索する方法について見ていきます。
Linuxにおける多くの日常的な作業(設定ファイルの作成または編集など)では、特定のフォルダーを探す必要があります。
ファイルを見つける簡単な方法はたくさんありますが、ディレクトリを見つけるのはそれほど簡単ではありません。一般的な検索ツールを使って単純に検索すると、ファイルだけが返されたり、似たような名前のファイルでビューが埋め尽くされたりすることがあります。
しかし、これらの落とし穴は、検索ツールのオプションを調整することで回避することができます。そこで、以下に紹介するツールはすでに使用されているかもしれませんが、今日はフォルダだけを表示する方法と、フォルダのサイズを表示する方法について説明します。
GNOMEデスクトップを使用している場合、Filesアプリケーションを開き、以下の手順を実行することで、素早くフォルダを見つけることができます。
検索語と一致する名称のサブカテゴリーからカタログを検索することができるようになりました。
GNOMEを使用していない場合、Linuxでディレクトリを検索するための、もう一つの有名で広く利用されているGUI手法はCatfishです。Ubuntuベースのシステムでは、ソフトウェアマネージャでアプリケーションを検索するか、以下のコマンドでインストールすることができます。
sudo apt install catfishFedoraやその他のRPMベースのシステムにCatfishをインストールするには、次のコマンドを使用します。
yum install catfishインストールしたら、Catfishを開き、左サイドバーが表示されていることを確認します。表示されていない場合は、F9キーを押すか、ウィンドウ右上の歯車アイコンをクリックし、「サイドバーを表示する」にチェックを入れてください。
デフォルトでは、Catfishはフォルダではなく、ファイルの検索を試みます。フォルダ "にチェックを入れ、他のオプションはすべてオフにした状態で、検索するフォルダを指定する必要があります。
ターミナルを使いたい場合は、findコマンドを使うと簡単で多目的に使える検索ツールです。
find ~/Documents -type d -name MyFolder上記のコマンドは、ファイルシステム全体(~/Documents で指定)を対象に、MyFolder という名前のディレクトリを検索します(-name MyFolder)(-dと入力)。
ルートファイルシステムを検索する場合は、場所として / が必要です。また、sudo を前置きして権限を昇格させる必要があります。
場所を指定する代わりに、カレントディレクトリを検索したいフォルダに変更するだけで、その場合、Findはカレントディレクトリのみを検索します。
コマンドのtype-dの部分は、ファイルではなく、ディレクトリを探していることを指定します。検索時に、同じ検索語を含むファイル名で溢れることのないよう、この情報を必ず入れてください。
探しているフォルダー名に大文字と小文字のどちらを使うかわからない場合、-nameパラメータを-inameに変更すると、大文字と小文字を区別せずに強制的に検索することができます。
また、フォルダ名の一部しか特定できない場合は、ワイルドカードタグを使用することができます。
この2つのオプションの使用例を以下に示します。
find / -type d -iname myfolder*似たようなツールにlocateがあります。locateでフォルダを検索すると、次のようになります。
locate -b '\MyFolder'上記のコマンドは、ファイルシステム上にある "MyFolder "という名前のフォルダを探します。
部分一致を検索するには、逆カンマまたは**アスタリスクを削除してください。ただし、ワイルドカード検索では、フォルダー外のファイル名が一致する場合がありますので、ご注意ください。
また、-i オプションを渡すと、ケースを無視することができます。
ここで、「"locate "と "find "はどう違うのか?
要するに、より速く、より正確に位置が分かるということです。
findコマンドは、アクティブなファイルシステムから検索項目を探し、現在のパスと全く同じパスを返します。
ライブのファイルシステムを検索する代わりに、すべてのファイルとフォルダー名のインデックスを事前に作成したデータベースを検索します。このように簡略化すると、検索は非常に速くなりますが、データベースが陳腐化する可能性があります。
関連:Linuxでディスク使用量を確認するための優れたアプリ7選
ですから、そのフォルダが最近作成されたり移動されたりしたと思われない限りは、「検索」が最適な選択肢となります。
フォルダが最近変更されたと思われる場合は、findを使用する必要があります。また、最初に以下のコマンドを発行して検索データベースを更新すれば、locateを使用することができます。
sudo updatedbこの操作は時間がかかりますが、一度完了すれば、ロケートコマンドが高速かつ正確な結果を返してくれるようになります。
これらの方法で見つけたフォルダのサイズを確認したい場合は、du コマンドを使用すると素早く確認することができます。以下のように、-hsオプションの後にフォルダのパスを指定します。
du -hs /MyFolders文字(サマリー用)を削除すると、各サブディレクトリのサイズが表示されます。
数回のクリックやコマンドキーを押すだけで、任意のフォルダを検索できるようになりました。
フォルダーの中身を他のPCに移す必要がある場合、ワイヤレスで転送するオプションに驚かれるかもしれません。