Whereisを使ってLinuxコマンドとプログラムを見つける方法

あなたはコマンド、プログラム、アプリケーションの場所見つけようとしたことがありますが、見た目がわからなかったことはありますか?

もちろん、 findコマンドを使用して次のように検索することもできます。

find / -name firefox

これにより、潜在的な結果のリストが返され、一般に、この方法でプログラムの場所を見つけることができます。

使用できるもう1つのコマンドはlocateコマンドです。 例えば:

firefoxを見つける

しかし、プログラムを見つけるのに最も良い方法はwhereisコマンドです。

マニュアルページによると:

whereisは、指定されたコマンド名のバイナリファイル、ソースファイル、およびマニュアルファイルを検索します。 指定された名前は、先行するパス名の構成要素と、.extの形式の後続の拡張子(例えば、.c)の任意の(単一の)末尾拡張子から最初に取り除かれます。 ソースコード管理の使用に起因するものも扱われます。 そこで、Whereisは、標準Linuxの場所と$ PATHと$ MANPATHで指定された場所に、指定されたプログラムを配置しようとします。

したがって、本質的にwhereisコマンドは、ソースコード、マニュアル、およびプログラムの場所を見つけることができます。

Firefoxで試してみましょう:

whereis firefox

上記のコマンドの出力は次のとおりです。

firefox:/ usr / bin / firefox / usr / lib64 / firefox /usr/share/man/man1/firefox.1.gz

プログラムの場所を探したいだけなら、次のようにスイッチ-bを使うことができます:

whereis -b firefox

これにより、次の結果が返されます。

firefox:/ usr / bin / firefox / usr / lib64 / firefox

また、マニュアルの場所を知りたい場合は、-mスイッチを使用することもできます。

whereis -m firefox

上記のコマンドの結果は次のとおりです。

firefox:/usr/share/man/man1/firefox.1.gz

最後に、-sスイッチを使用して検索をソースコードだけに制限することができます。

珍しいファイルを探す-uを含む、whereisコマンドに利用できる他のスイッチがあります。

このマニュアルでは、-uスイッチについて次のように述べています。

コマンドは、明示的に要求されたそれぞれのタイプのエントリーが1つしかない場合、珍しいと言われます。 したがって、 'whereis -m -u *'は、カレントディレクトリ内のドキュメントファイルを持たないファイル、または複数のファイルを要求します。

基本的に、複数のマニュアルがシステム上にある場合、または実行中のプログラムが複数の場所に表示された場合、それらは返されます。

プログラムやコマンドの場所に関するあいまいな概念があり、特定のディレクトリセットを検索したい場合は、-Bスイッチを使用して指定されたリストのバイナリを検索できます。

例えば:

whereis -b -B / usr / bin -f firefox

上記のコマンドにはいくつかの部分があります。 まず第一に、-bスイッチがあります。これは、バイナリのみ(プログラム自体)を探していることを意味します。 -Bスイッチは、バイナリを検索する場所のリストを提供するために使用され、フォルダのリストは-fスイッチによって終了されます。 したがって、上のコマンドでは、検索される唯一のディレクトリは/ usr / binです。 最後に、-fの後にあるfirefoxは、それが何を探しているかを伝えます。

-Bスイッチの代わりに-Mを使用して、マニュアルの特定のフォルダセットを検索します。

-Mスイッチのコマンドラインは次のようになります。

whereis -m -M / usr / share / man / man1 -f firefox

-Bの-Mと同じロジックです。 -mはwhereisがマニュアルを検索するよう指示します。-Mは、マニュアルの検索対象となるフォルダのリストがどこにあるかを示します。 -fはファイルのリストを終了し、firefoxはwhereisコマンドがマニュアルを探すプログラムです。

最後に、-Sスイッチを使用して、ソースコードを検索する一連のフォルダを一覧表示することができます。