ウェブサイト検索

Linuxで「PATH」変数を設定する方法


ターミナルからカスタムスクリプトやプログラムに迅速にアクセスしたいですか?LinuxでのPATH変数の設定方法はこちらです。

PATH変数は、Linuxや他のUnix系オペレーティングシステムにおいて重要な要素です。それはシステム上のさまざまな実行可能ファイルを保持するディレクトリのリストを指定し、シェルにこれらの実行可能ファイルをどこで探すべきかを示します。

新しいLinuxのインストールでは、PATHに含まれるディレクトリにより、あなたが実行するほとんどのプログラムが問題なく動作します。しかし、システムでカスタムスクリプトやプログラムをすぐに実行したい場合もあるかもしれません。

そのような場合、プログラムを実行する前にPATH変数を適切に設定する必要があります。

LinuxにおけるPATHとは何ですか?

上記のように、` PATHはLinuxにおける環境変数であり、Linuxシェルがコマンドまたはプログラムからのexec呼び出しを受け取った際に参照するディレクトリのコロンで区切られたリストで構成されています。

通常、PATH変数には/bin、/usr/bin、および/usr/local/binディレクトリが含まれ、スーパーユーザーにはさらに/sbinと/usr/sbinの2つのエントリがあります。ただし、作業ディレクトリに関係なく、ターミナルからスクリプトやプログラムを便利に起動するために、PATH変数に新しいエントリを追加することができます。

なぜ PATH を設定したいのですか?

一般的に、あなたのLinuxシステムで実行するほとんどのプログラムは問題なく作動し、シェルは実行時にエラーを表示することはありません。例えば、lsコマンドを実行すると、シェルはコマンドの完全なパスを指定する必要もなく、エラーなしにそれを実行します。

ただし、カスタムスクリプトを実行する必要がある場合、以前のlsコマンドのようにexecコマンドを宣言することはできません。代わりに、スクリプトのディレクトリに移動して(ターミナルを介して)そこからコマンドを実行するか、システムのどこからでもコマンドを実行できるようにするには、コマンド内でスクリプトの絶対パスを指定してシェルに位置を特定させる必要があります。

これらの方法はどちらも上手く機能しますが、あまり効率的ではなく、すぐに全体のプロセスが退屈なルーチンになってしまう可能性があります。非標準ディレクトリからプログラムを実行するための代替手段(効率的で効果的な方法)は、シェルの `PATH` にそのソースディレクトリを追加することです。これにより、スクリプトの場所を見つけることができるようになり、したがって迅速に実行できるようになります。

LinuxでのPATH変数の設定方法

達成したいことに応じて、スクリプトを一度だけ実行するための一時的な設定か、スクリプトを定期的に使用する予定かによって、ディレクトリをパスに追加する方法は異なります。

1. 一時的に PATH 変数を設定する

現在の(アクティブな)セッション内でスクリプトやプログラムを実行したい場合、一時的な PATH 変数を設定することを選択できます。これを行うと、システムのどこからでもフルパスを含めずに、そのプログラムをコマンドで実行できるようになりますが、現在のセッション内のみです。

一時的に PATH 変数を設定するには、ターミナルを開き、次の構文を使用してディレクトリを変数に追加します:

export PATH=$PATH:/path/to/directory

例えば:

export PATH=$PATH:/home/smithy/scripts/

この設定では、アクティブなセッションでのみプログラムを実行できることに注意してください。` PATH 変数を一時的に設定すると、コンピュータを再起動した後、システムはそれをデフォルトの設定にリセットします。

2. 永続的な PATH 変数の設定

システム上で頻繁に使用する可能性のあるプログラムがある場合は、それに対して `PATH` 変数を永続的に設定する必要があります。これにより、シェルは再起動後でもそのディレクトリを記憶します。

一時的な解決策とは異なり、PATHを永続的に設定するには、いくつかの追加手順が必要です。使用しているシェルを特定し、それに対応する設定ファイルを編集し、そこでPATH変数を設定します。

システム上のシェルを特定するには、ターミナルで以下のコマンドを実行してください:

echo $0

出力としてアクティブなシェルの名前が表示されるはずです。ほとんどの場合、これはBashシェルですが、Zsh、Ksh、または他のLinuxシェルに変更していない限りそうなります。

さて、使用しているシェルに基づいて、その設定ファイルを編集する必要があります。使用しているシェルに基づいて編集する必要があるファイルは次のとおりです:

シェル名

構成ファイル

バッシュ

~/.bashrc

ksh

~/.kshrc

zsh

~/.zshrc

csh

~/.cshrc

他のシェルの場合は、そのドキュメントを確認して設定ファイル名を見つけてください。

必要なファイルを特定したら、以下の手順に従って` PATH変数を設定してください。このガイドでは、Bashシェルで` PATH変数を設定する方法を示します。

  1. ターミナルを開き、次のコマンドを入力して.bashrcファイルを開きます。お好きなLinuxテキストエディタを使用できます。

    nano ~/.bashrc
  2. 次の構文を使用して` PATH変数を設定します。

     PATH=:/path/to/directory/
  3. ファイルを保存し、sourceを使用して現在のシェル環境を更新します。

     ~/.bashrc
  4. ディレクトリが追加されたかどうかを確認するには、次のコマンドを入力してください。

     

ディレクトリパスを正しく入力した場合、それはシステムの `PATH` に反映され、システムの任意のディレクトリからフォルダ内のすべてのスクリプトを実行できるようになります。

さらに、Linuxでは、システム全体の設定でPATH変数を永久に設定できるため、システムのすべてのユーザーが指定したディレクトリにあるカスタムスクリプトにアクセスし、実行できるようになります。

グローバルに PATH を設定するには、一時的および永続的なセットアップを追加する際に使用したのと同じコマンドを使ってディレクトリを追加する必要がありますが、/etc/environment または /etc/profile ファイルのいずれかに追加します。

これらのファイルのいずれかを開き、ディレクトリのパスを追加してください。

nano /etc/environment
nano /etc/profile

LinuxでのPATHの設定に成功しました

上記の手順を使用すると、システムの` PATH`を設定して、その他の指定されていないディレクトリ内のスクリプトを探すことができます。

ほとんどの場合、2つの方法の中で最も効率的な方法であるため、ユーザーごとの設定でシステムにPATH変数を永続的に設定することをお勧めします。

また、システム全体でアクセスしたい特定のプログラムがない限り、システム全体の設定でPATH変数を設定する必要はないことを忘れないでください。Linuxのlocateおよびfindコマンドは、PATH変数に追加するためのソースディレクトリを見つける際に問題がある場合に非常に役立ちます。

関連記事: