【大阪 / 横浜】インフラ / サーバーサイドエンジニア募集中!

【大阪 / 横浜】インフラ / サーバーサイドエンジニア募集中!

【導入実績 500社以上】AWS 構築・運用保守・監視サービス

【導入実績 500社以上】AWS 構築・運用保守・監視サービス

【CentOS 後継】AlmaLinux OS サーバー構築・移行サービス

【CentOS 後継】AlmaLinux OS サーバー構築・移行サービス

【WordPress 専用】クラウドサーバー『ウェブスピード』

【WordPress 専用】クラウドサーバー『ウェブスピード』

【格安】Webサイト セキュリティ自動診断「クイックスキャナー」

【格安】Webサイト セキュリティ自動診断「クイックスキャナー」

【予約システム開発】EDISONE カスタマイズ開発サービス

【予約システム開発】EDISONE カスタマイズ開発サービス

【100URLの登録が0円】Webサイト監視サービス『Appmill』

【100URLの登録が0円】Webサイト監視サービス『Appmill』

【200ヶ国以上に対応】グローバル eSIM「ビヨンドSIM」

【200ヶ国以上に対応】グローバル eSIM「ビヨンドSIM」

【中国への旅行・出張・駐在なら】中国SIMサービス「チョコSIM」

【中国への旅行・出張・駐在なら】中国SIMサービス「チョコSIM」

【グローバル専用サービス】北米・中国でも、ビヨンドのMSP

【グローバル専用サービス】北米・中国でも、ビヨンドのMSP

【YouTube】ビヨンド公式チャンネル「びよまるチャンネル」

【YouTube】ビヨンド公式チャンネル「びよまるチャンネル」

パス(PATH)が通っているとはどういうことなのか?

インフラチームの中川です。

今回の記事はコマンドの仕組みについてです。
サーバにログインしてログを見る、ファイルの内容を見る、サーバの状況を確認するなど
さまざまな実行結果を返すコマンドの仕組みを改めて調べてみました。

コマンドが実行できる理由を調べるとパスが通っているからと出てきます。
では、「パスが通っているから」とはどういうことなのでしょう。

パス(path)とは

  1. 目的のディレクトリまでの道筋・経路。
  2. コマンドを実行するファイルのある場所のこと。

「2.」のところにコマンドがプログラムとして置かれていて、コマンドとして認識・実行されているのです。
つまり、パスが通っている=対象ディレクトリにあるプログラムがコマンドとして設定されているということです。

確認してみる

lsコマンドを例にして確かめてみます。

  1. whichコマンドでlsコマンドを実行するプログラムを探す
  2. lsコマンドを実行して/bin/ディレクトリ内を一覧表示する
  3. /bin/lsを実行して/bin/ディレクトリ内を一覧表示する

null
実行結果は同じですね!

とはいえディレクトリに置かれているプログラムを探した上、フルパスで指定するのは手間がかかります。
あとlsコマンドの場合は、ファイル種類ごとに色を分けて表示する設定をしているため見やすいですね。

現在パスが設定されているディレクトリはechoコマンドで確認できます。

null

コマンドラインに入力して実行するコマンドは、特定のディレクトリから検索して実行されます。
その際に実行ファイルを探しに行くパスをコマンド検索パスといいます。

上記画像の環境変数PATHにあるディレクトリ内に設定されているものがコマンド検索パスです。
この場合、次のディレクトリが該当しますね。

  • /usr/local/sbin
  • /usr/local/bin
  • /sbin
  • /bin
  • /usr/sbin
  • /usr/bin
  • /opt/aws/bin
  • /root/bin

コマンドラインからコマンドを入力すると、コマンド検索パスから該当ファイルを探して
その実行結果を返しているということがパスが通っているに繋がるわけです。

終わりに

目的に合わせたコマンドやオプションはよく検索しますが、
どうしてその実行結果が返ってくるのかという仕組みまでを深くわかっていませんでした。
コマンドを覚えるのも勉強になりますがその仕組みを知っていくと
より興味や理解に繋がっていきました。

パスが通っている仕組みに関しては以上です。
読んでくださってありがとうございました!

この記事がお役に立てば【 いいね 】のご協力をお願いいたします!
1
読み込み中...
1 票, 平均: 1.00 / 11
3,359
X facebook はてなブックマーク pocket
【2024.6.30 CentOS サポート終了】CentOS サーバー移行ソリューション

【2024.6.30 CentOS サポート終了】CentOS サーバー移行ソリューション

【2025.6.30 Amazon Linux 2 サポート終了】Amazon Linux サーバー移行ソリューション

【2025.6.30 Amazon Linux 2 サポート終了】Amazon Linux サーバー移行ソリューション

【大阪 / 横浜】インフラエンジニア・サーバーサイドエンジニア 積極採用中!

【大阪 / 横浜】インフラエンジニア・サーバーサイドエンジニア 積極採用中!

この記事をかいた人

About the author

中川咲季奈

2016年に新卒として入社しました。最近サーバの基礎知識を学ぶのが楽しいです。