Linuxでファイルを迅速に見つけるための5つのコマンドラインツール
ターミナルからLinuxシステム上のファイルを検索したり見つけたりすることは、特に初心者にとっては少し難しいことがあります。しかし、Linuxでファイルを見つけるためのいくつかのコマンドラインツール/ユーティリティがあります。
この記事では、Linuxシステムでファイルを迅速に見つけたり、特定したり、検索したりするための5つのコマンドラインツールをレビューします。
コマンドを見つける
findコマンドは、ディレクトリ階層内の名前が単純なパターンに一致するファイルを検索し、見つけるための強力で広く使用されているCLIツールです。findを使用するのは簡単で、検索が始まる出発点(ディレクトリ階層の先頭)を提供するだけです。これには、現在のディレクトリや、探しているファイルが格納されていると思われる別のディレクトリを指定できます。
開始点の後に、ファイルをどのように一致させ、一致したファイルに対して何をするかを説明する式(テスト、アクション、オプション、および演算子で構成される)を指定できます。
ファイルを見つけるための複数のオプションがサポートされており、パーミッション、ユーザー、グループ、ファイルタイプ、日付、サイズ、その他の可能な基準などの属性を使用しています。以下の記事では、いくつかの便利なfindコマンドの使用例を学ぶことができます。
- Linuxのfindコマンドの実用的な例 35選
- ディレクトリをより効率的に検索するための「find」コマンドの使い方
- LinuxでSUIDおよびSGID権限を持つファイルを見つける方法
- Linuxで複数のファイル名(拡張子)を検索するための 'find' コマンドの使い方
- Linuxでファイルを修正日時に基づいて見つけて並べ替える方法
コマンドを特定する
locateコマンドは、findコマンドのように、名前でファイルを迅速に検索するための一般的に使用されるCLIユーティリティの一つです。ただし、locateは実際にはより効率的で高速です。なぜなら、ユーザーがファイル検索操作を開始するときにファイルシステムを検索するのではなく(findが動作する方法)、locateはファイルの部分とそれに対応するファイルシステム上のパスを含むデータベースにクエリを送るからです。
このデータベースは、updatedb コマンドを使用して準備および更新できます。関連するデータベースの最近の更新後に作成されたファイルは、locate では報告されないことに注意してください。
関連情報: Linuxでファイルを見つけるための 'locate コマンド' のインストール方法
3. Grepコマンド
grep コマンドはファイルを直接検索するためのツールではありませんが(これは代わりに、1つまたは複数のファイルからパターンに一致する行を印刷するために使用されます)、ファイルを見つけるために利用することができます。探しているファイルに含まれているフレーズを知っている場合または特定の文字列を含むファイルを探している場合、grep を使用すると、特定のフレーズを含むすべてのファイルをリストアップするのに役立ちます。
例えば、あなたがREADME.mdファイルを探していて、その中に「アソートメント」というフレーズが含まれていると疑っている場合、それはおそらくあなたのホームディレクトリ、特に~/binのどこかにあるかもしれません。そのファイルを次のように見つけることができます。
$ grep -Ri ~/bin -e "An assortment"
OR
grep -Ri ~/bin/ -e "An assortment" | cut -d: -f1
grep フラグの場所:
-R– 指定されたディレクトリを再帰的に検索することを意味します-i– 大文字と小文字の区別を無視することを意味します- -e は検索のためのパターンとして使用されるフレーズを指定します。
-d– 区切り文字を指定します- -f は印刷されるフィールドを設定します
以下の記事で便利なgrepコマンドの使用例を学ぶことができます。
- Linux Grep コマンドの実用的な 12 の例
- 11の高度なLinux Grepコマンドの使用法と例
- ファイルやディレクトリ内で特定の文字列や単語を見つける方法
4. どのコマンド
whichコマンドは、コマンドのバイナリを見つけるための小さくて簡単なユーティリティです。それはコマンドの絶対パスを出力します。例えば:
$ which find
which locate
which which
5. Whereisコマンド
whereisコマンドはコマンドの位置を特定するためにも使用され、さらにそのソースの絶対パスとコマンドのマニュアルページファイルも表示します。
$ whereis find
whereis locate
whereis which
whereis whereis
関連記事: ファイルシステム上で「バイナリーコマンド」の説明と場所を見つける5つの方法
今のところはこれで終わりです!Linuxシステム上でファイルを素早く見つけるためのコマンドラインツール/ユーティリティについて何か見落とした場合は、下のコメントフォームでお知らせください。このトピックに関して質問があれば何でもお聞きください。