すべてのファイルに注意深くラベルが付けられ、整理されている完璧主義者でない限り、人生で少なくとも一度はファイルを検索しなければならなかった可能性があります。 Linux を初めて使用する場合は、Linux 上でファイルを見つける方法に疑問に思うかもしれません。幸いなことに、これを行うにはいくつかの方法があり、誰もが自分に最適な方法を選択できることを意味します。
一般に、Linux 上でファイルやフォルダーを検索するのに役立つアプリは 2 種類あります。 1 つ目は、ライブ ファイル システムを毎回検索するものです。 2 番目のタイプは、ファイルのインデックスを作成し、そのインデックスに対して検索を実行するアプリです。この記事では両方をバランスよく組み合わせたものを紹介しており、ニーズに応じて組み合わせることができます。
ターミナルでファイルを見つける方法
はい、わかっています…あなたはコマンドライン インターフェイスのファンではありません。それは素晴らしいことです。読み続ければ、より好みに合ったアプリが見つかるでしょう。ただし、コマンドから逃れられるとは考えないでください。このリストにあるアプリのほとんどは、 find および/または locate のための単なるグラフィカル インターフェイスであるため、直接ではなくても引き続き使用できます。
探す
最も重要なコマンドから始めましょう。 Find は 、必須の Linux ユーティリティの 1 つです。指定したパラメータ (「スイッチ」) に従って、設定したディレクトリ内で文字列を検索します。この例:
find /home/username/Documents -iname “writ*” -type f
これは、Documents フォルダー内のファイル (
-type f
) に対して大文字と小文字を区別しない (
-iname
) 検索を実行しており、そのファイル名が「writ」で始まることを意味します。ご覧のとおり、
find は
ワイルドカードをサポートしており、ワイルドカードを使用して拡張子でファイルを検索することもできます (たとえば、フォルダー内のすべての PDF ファイルを検索するには「*.pdf」)。
-empty
オプションを使用して空のファイルを検索したり、サイズと変更時刻に基づいてファイルを検索したりできます。
Find は
正規表現をサポートしており、ファイルの内容を検索したい場合は
grep
と組み合わせることができます。詳細については、
公式ドキュメント
を確認してください (またはターミナルで
man find
と入力してください)。
見つける
Locate では 別のアプローチが使用されます。これは、ファイルのデータベースを作成し、 cron スケジュール経由で定期的に更新する updatedb ユーティリティに依存しています。これにより、 locate は ファイル システム上に現在どのファイルが存在するかを知ることができます。いつでもデータベースを手動で更新することもできます。
Locate は 名前でファイルを検索でき、クエリでワイルドカードと正規表現を使用できます。例えば:
locate -ei grub.cfg
「grub.cfg」と呼ばれるすべての既存の (-e) ファイルへのパスが一覧表示されます。 -i オプションは「大文字と小文字を区別しない」を表します。探しているファイルの完全な名前がわからない場合は、その一部を入力するだけで、 locate を使用すると、名前にその単語が含まれるすべてのファイルが表示されます。
どこですか
このコマンドには非常に具体的な目的があるため、毎日使用することはおそらくないでしょう。 Whereis は、 特定のアプリケーションのソース、バイナリ、ユーザー マニュアルの場所を示します。これは、ランダムなテキスト ファイルを見つけたいときに whereis を実行しないことを意味します。ただし、GIMP または Firefox が設定ファイルや実行可能ファイルを保存する場所を確認する必要がある場合には、これを使用します。
オプションを指定せずに whereis を実行すると、すべてのファイルのリストを取得したり、それぞれの機能のスイッチを追加したりできます (バイナリの場合は -b、ソースの場合は -s、マニュアルの場合は -m)。
ファイルマネージャーを使用してファイルを検索する方法
Linux 用のほとんどのファイル マネージャーは、ファイルを名前でフィルターしたり、基本的な検索を実行したりできます。高度なパラメーターが必要ない場合は、これが簡単に機能する方法です。
オウムガイ
Ctrl+F を押すか、ツールバーの虫眼鏡アイコンをクリックして、検索機能 (スクリーンショットでは緑色で強調表示されている) にアクセスします。検索では大文字と小文字が区別されないため、クエリの大文字を気にする必要はありません。ファイルをタイプと場所でフィルタリングできますが、後者は調整できる内容が多少制限されています。
イルカ
Dolphin の検索は同じキーボード ショートカット (Ctrl+F) に応答します。または、[編集] メニューから開くこともできます。名前、内容、場所 (現在のフォルダーまたはファイルシステム全体) でファイルをフィルターできます。 Baloo でファイルのインデックス作成を有効にしている場合、Dolphin は種類と変更日でファイルを検索できます。
クルセイダー
Krusader は、豊富な高度なオプションのおかげで、Dolphin の代替品として KDE ユーザーの間で人気があります。 Krusader のファイル検索機能には 2 つの機能があります。 検索 コマンドと 位置特定 コマンドの両方の GUI として機能します。
前者では、ファイルの種類、含まれるディレクトリまたは除外されるディレクトリ、サイズ、所有権、ファイルのアクセス許可など、多くの詳細を調整できます。 Krusader は、ファイル内やアーカイブ (ZIP や TAR など) 内のキーワードを検索でき、正規表現を使用してクエリをカスタマイズできます。まだクルセイダーを試したことがない方は、今がチャンスです。
トゥナール
Thunar は、 Catfish と呼ばれるファイル検索ユーティリティと統合されており、迅速かつ詳細な結果を提供します。ファイルをタイプと変更日でフィルタリングし、ファイルの内容と名前を検索できます。 Catfish はあいまいな (不完全な) ファイル名一致をサポートしているため、探しているファイルの正確な名前を知る必要はありません。
ランチャーを使用してファイルを検索する方法
ランチャーは通常、アプリを起動するために使用されます。ただし、さまざまなプラグインを有効にすることで、ファイルの検索に使用することもできます。これらは素早くて実用的です。入力を開始するだけで、結果がすぐにポップアップ表示されます。 Linux には多数のランチャーがあります。いくつかの例に焦点を当てます。
クプファー
Kupfer は、Debian、Ubuntu、Fedora、Arch Linux のリポジトリで利用できるシンプルなランチャーです。これには、 locate コマンドでファイルを検索できるプラグインが多数付属しており、インデックス付きフォルダーの独自のカタログを作成できます。
Kupfer はアクションベースのランチャーです。検索キーワードを入力すると、Kupfer は結果に対して実行できるアクションをリスト表示します。これらは有効にしたプラグインによって異なり、ドロップダウン メニューで選択することで有効にできます。
Kランナー
KRunner は 、システム設定 – プラズマ検索 ダイアログで設定できるデフォルトの KDE ランチャーです。
Kupfer と同様に、ファイルの検索だけでなく、他の Linux アプリケーションや Plasma デスクトップ環境の一部との対話にも役立つ多数のプラグインをサポートしています。 KRunner は、YouTube や Wikipedia を検索したり、最近使用したドキュメントを表示したり、種類ごとにファイルを検索したり、その他多くのことを行うことができます。
アルバート
Albert は、OS X の Alfred ランチャーからインスピレーションを得ています。見た目はシンプルですが、Albert には遊べるオプションがたくさんあります。ご想像のとおり、プラグインもありますが、ここでは「ファイル」が最も重要です。
このプラグインを使用すると、Albert が監視して依存するディレクトリのインデックスを作成できます。あいまい (不完全) 一致を有効にして、インデックスを作成するファイルの種類を選択できます。ファイルを検索するには、指定されたキーボード ショートカットを押して Albert を実行し、クエリの入力を開始するだけです。
変異する
もう 1 つの Alfred からインスピレーションを得た Linux 用ランチャーである Mutate には、Albert ほど多くのオプションはありません。それでも、ファイル検索を含む複数の検索タイプを備えています。ファイルは名前とファイル拡張子で検索できます。 [設定] ダイアログはやや特殊で、Mutate が使用しているスクリプトが表示されますが、キーワードとキーボード ショートカット以外の設定はできません。
専用の Linux アプリでファイルを検索する
これまで、主に単純なファイル検索ソリューションについて説明してきました。これらは日常的な検索には最適ですが、複雑なクエリやファイル内容の検索となるとあまり役に立ちません。より強力なものが必要な場合は、次の提案を検討してください。
GNOME ファイルの検索
GNOME Search がディストリビューションにインストールされていない場合は、リポジトリで
gnome-search-tool
パッケージを探してください。 GNOME Search は、
locate
、
find
、および
grep
コマンドを利用しており、ワイルドカードと部分的なファイル名の一致をサポートしています。ドロップダウン メニューから選択して [追加] をクリックすると、複数の検索オプションを組み合わせることができます。
KFind
KFind は、いくつかの追加オプションを備えた GNOME Search に相当する KDE です。ファイル名またはファイルの内容を検索できます。KDE システムでファイルのインデックス作成を有効にしている場合は、インデックスを検索してプロセスを高速化できます。オプションはタブに分かれており、最後のタブ (「プロパティ」) では、サイズ、変更日、所有権別にファイルを検索できます。正規表現とワイルドカードとは別に、KFind はクエリ内の単一文字の代用として疑問符をサポートします。たとえば、「no?es」を検索すると、「noses」、「notes」、「nodes」などの名前のファイルが見つかります。
ユニティダッシュ
Unity デスクトップに忠実な Ubuntu ユーザーは、Dash に精通しているでしょう。 Unity Dash は、いくつかのパラメーター (ファイル名、変更日、ファイルの種類、サイズ) に従ってファイルとフォルダーを検索できます。機能を拡張するために、さまざまな Unity スコープ とレンズをインストールできます。外部サービスを Dash に統合し、ブラウザのブックマーク、Google ドキュメント ファイル、ウェブ履歴などを検索できるようにします。
サーチモンキー
SearchMonkey は比較的古いものですが、依然として完全に機能するデスクトップ検索アプリです。正規表現が主な焦点であり、正規表現の作成を支援する「正規表現のテスト」ツールがあります。 SearchMonkey は、すべての重要な検索パラメーター (ファイル名、変更日、サイズ、ファイルの内容) に加えて、再帰的検索の深さを選択したフォルダー数に制限するオプションをサポートしています。
検索結果を CSV ファイルとして保存し、クエリごとに結果の量を制限することもできます。
ドクターフェッチャー
DocFetcher は、ファイル名だけでなくファイルの内容を検索する必要が多い人のためのデスクトップ検索エンジンです。研究者、学生、およびテキストベースのファイルの大規模なコレクションを扱うその他のユーザーのことを考えてください。 DocFetcher は、まず、選択したファイルとフォルダーのデータベースを構築します。このデータベースは、ファイルが変更されたことを DocFetcher が検出するたびに自動的に更新されます。
ファイルを検索するときは、タイプとサイズでファイルをフィルタリングしたり、正規表現を使用して詳細なクエリを実行したりできます。 DocFetcher は、PDF、EPUB、HTML、RTF、Office ファイル内だけでなく、アーカイブ ファイル (ZIP、TAR、7z など)、さらには Outlook メール内も検索できます。
DocFetcher の優れた点の 1 つは、ポータブル バージョンがあるため、データベースとアプリを USB スティックに入れて持ち運べ、どこでも使用できることです。
思い出す
Recoll は、おそらく Linux 用の最も強力なデスクトップ検索エンジンです。これは DocFetcher に似ており、ファイルの内容を検索するために使用します。初めて実行すると、ファイルのインデックスを作成するように求められます。インデックスを作成するディレクトリとファイルの種類を選択し、サイズによってファイルを制限できます。 Recoll は、インデックスが実際のファイルと常に同期されるように更新スケジュールを設定します。必要に応じて、複数のファイル インデックスを作成し、1 つだけまたはすべてのファイルを検索できます。
ファイルを名前で検索したり、ファイル内のキーワードを検索したりできます。 Recall を使用すると、いくつかの基準で結果をフィルタリングできます。また、関連ファイルや類似ファイルを表示したり、ファイル内のフレーズを検索したり、ステミングのサポートにより単語形式を認識したりすることもできます。これは、「work」を検索すると、結果には「working」、「worked」、「workers」などを含むファイルが含まれることを意味します。
サポートされているファイル形式には、通常のテキスト ファイル、ログ、マニュアル ページ、HTML、PDF、CHM、RTF、DJVU、および EPUB ファイル、Libre および Microsoft Office ファイル (Excel および Powerpoint ドキュメントを含む)、TAR、RAR、7z、および ZIP アーカイブが含まれます。一部の機能では、外部ライブラリまたはヘルパー ユーティリティが必要になる場合があることに注意してください。
関連項目: Linux コンピューターで OneDrive アカウントを同期する方法
ほとんどのファイル検索ツールは同じオプションをサポートしているため、どちらを選択するかは主に利便性の問題であり、一般的なワークフローに最適なものを決定することになります。このリストは長く見えるかもしれませんが、Linux 用のファイル検索ユーティリティは他にもあります。最速の検索ツールを目指す新しいプロジェクトである ANGRYsearch について説明します。 そしてあなたはどうですか? Linux 上でファイルを検索するための他のアプリを知っていますか?何を使っていますか?ヒントを教えていただけますか?コメントでお知らせください。
画像クレジット: Mutate スクリーンショット 、 DocFetcher スクリーンショット