初心者目線のLPIC講座 〜わかりやすいかも、このサイト〜

初心者目線のLPIC講座 > bashシェル > コマンド実行パス

bashシェル

コマンド実行パス

シェルには環境変数というものがあり、自分で変数を設定する場合もありますが、通常よく使われるものは、最初からシェルの方でいくつか変数を定義してあります。

その中の一つでPATHという変数があるのですが、このPATHには簡単に言うとコマンドが格納されているディレクトリの情報が書かれており、これを「パス」とか「コマンド実行パス」といいます。

よく、パスが"通っている"とか"通っていない"とかいう言い方をするのですが、簡単に言えばこのPATHという環境変数にディレクトリ情報(=パス)が書かれているかどうか、という事です。

それでは例をあげて見ましょう。まずechoコマンドでPATHの中身を見てみます。

echo $PATH

そうすると、下記のような感じでPATHの内容が表示されます。

/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games

みると、長ったらしいパスがたくさん並んでいますが、これはコロン「:」を区切り文字にして、

/usr/local/bin

/usr/bin

/bin

/usr/bin/X11

/usr/games

という、全部で5つのパスを記述してあるという意味です。

このPATHに書かれているディレクトリの配下にあるコマンドであれば、「パスが通っている」ので、入力すればそのまま実行できます。

逆に、「パスが通っていない」例を示します。

例えば、ここで「ifconfig」というコマンドについて話しますと、実は、このコマンドの格納場所というのが、/sbinという配下にあります。上記のPATHには記入されていないので、いわゆる「パスの通っていないコマンド」です。

ここでifconfigコマンドを実行してもエラーがでるので、

/sbin/ifconfig

と、頭から全てのパスを入力することで、実行できます。

ちなみにこの、頭から入力する全てのパスのことをフルパスといいます。

このパスの話は、次の「外部コマンド」というところでもよく出てきますので、覚えておきましょう。


スポンサードリンク