Bashプログラミング
 Computer >> コンピューター >  >> プログラミング >> Bashプログラミング

Unix/Linuxで実行可能バイナリの場所を調べる方法|whereisとtypeコマンドの使い方

UnixやLinuxシステムにおいて、実行可能なバイナリファイルがシステム上のどこに配置されているかを調べたい場面は少なくありません。そんなときに役立つのが、whereisコマンドとtypeコマンドです。

whereisコマンドとは

whereisは、指定したファイルに関連するソースコード、バイナリ、マニュアル(manページ)のセクションが格納されている場所を検索して表示するコマンドです。

使用例

$ whereis ls
ls: /bin/ls /usr/share/man/man1/ls.1.gz

この例では、「ls」コマンドの実行バイナリが「/bin/ls」に存在し、マニュアルが「/usr/share/man/man1/」配下にあることがわかります。

typeコマンドとは

typeはシェルの組み込みコマンドで、あるコマンド名を入力したときに、シェルが実際に何を実行するのかを正確に教えてくれます。実行ファイルへのパスだけでなく、エイリアス(alias)、関数、シェル組み込みコマンドなども判別できる点が特徴です。

使用例

$ type ls
ls is aliased to `ls --color=auto'

$ type cd
cd is a shell builtin

$ type grep
grep is /usr/bin/grep

このように、typeを使えばコマンドがエイリアスなのか、組み込みコマンドなのか、それとも外部の実行ファイルなのかを一目で確認できます。

whereisとtypeの使い分け

  • whereis:バイナリ・ソース・マニュアルなど、ファイルそのものの物理的な場所を知りたいときに便利
  • type:シェルがどのコマンドを実際に解釈・実行するのかを確認したいときに便利

また、類似のコマンドとしてwhichもあります。whichはPATH環境変数を基準に実行可能ファイルの場所のみを表示するため、目的に応じてこれらのコマンドを使い分けるとよいでしょう。

以下の画像は、これらのコマンドの実行例を示したものです。

Unix/Linuxで実行可能バイナリの場所を調べる方法|whereisとtypeコマンドの使い方

  1. Linuxでファイルを検索する方法|find・locate・which・whereisコマンドの使い方と違いを徹底解説

    Linuxのターミナルからファイルを検索・特定する方法はいくつかありますが、その中でも find、locate、which、whereis の4つのコマンドは特によく使われています。本記事では、それぞれのコマンドの基本的な使い方から、検索速度や用途の違いまで、わかりやすく解説していきます。 1. find ― 指定ディレクトリを柔軟に検索する定番コマンド find は、任意のディレクトリ内のファイルを検索するための最も直接的なアプローチです。検索対象のディレクトリを明示的に指定しない場合は、カレントディレクトリ(現在いるディレクトリ)が検索範囲になります。 次のスクリーンショットは、カ

  2. Linuxでパッケージがインストールされているか確認する方法|コマンドとGUIの使い分け

    Linuxにおける「パッケージ」とは、ソフトウェアの集合体のことです。そのインストール方法はディストリビューションごとに異なりますが、「特定のパッケージが現在インストールされているかどうか」を素早く確認する方法はいくつか存在します。ターミナル操作に慣れている方でも、視覚的なGUI操作を好む方でも、自分に合った方法で簡単にチェックできます。この記事では、Linuxでパッケージのインストール状況を確認するさまざまな手法を紹介します。 パッケージマネージャーを使って確認する どのLinuxディストリビューションにも、必ずパッケージマネージャーが搭載されています。名前の通り、ソフトウェアパッケージの