GNU/Linux >> Linux の 問題 >  >> Linux

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

$ PATHを編集できるようになる Linux、BSD、macOSのいずれを使用していても、POSIXの初心者ユーザーにとって重要なスキルです。

Linuxまたは他のLinuxのようなオペレーティングシステムでコマンドプロンプトにコマンドを入力すると、プログラムを実行するように指示するだけです。 lsのような単純なコマンドでも 、 mkdir rm 、およびその他は、通常、 /と呼ばれるコンピュータ上のディレクトリ内にある小さなプログラムです。 usr / bin 。システムには、実行可能プログラムを一般的に保持する他の場所もあります。一般的なものには/があります usr / local / bin / usr /ローカル/ sbin 、および / usr / sbin 。どのプログラムがどこに、そしてその理由で存在するかはこの記事の範囲を超えていますが、実行可能プログラムはコンピュータ上の実質的にどこにでも存在できることを知っています。これらのディレクトリの1つに限定する必要はありません。

その他のLinuxリソース

  • Linuxコマンドのチートシート
  • 高度なLinuxコマンドのチートシート
  • 無料のオンラインコース:RHELの技術概要
  • Linuxネットワーキングのチートシート
  • SELinuxチートシート
  • Linuxの一般的なコマンドのチートシート
  • Linuxコンテナとは何ですか?
  • 最新のLinux記事

Linuxシェルにコマンドを入力すると、その名前のプログラムがあるかどうかを確認するためにすべてのディレクトリが検索されるわけではありません。指定したものだけを調べます。上記のディレクトリを調べることはどのようにしてわかりますか?簡単です。これらは、 $ PATHと呼ばれる環境変数の一部です。 、どこを見ればよいかを知るためにシェルがチェックします。

パスを表示する

コンピュータの他の場所にプログラムをインストールしたいが、正確な場所を指定しなくても簡単に実行できる場合があります。 $ PATH にディレクトリを追加することで、これを簡単に行うことができます。 。 $ PATHの内容を確認するには 今、これを端末に入力します:

echo $PATH

上記のディレクトリやその他のディレクトリが表示される可能性があり、それらはすべてコロンで区切られています。次に、リストに別のディレクトリを追加しましょう。

パスを設定する

hello.shという小さなシェルスクリプトを作成したとします。 / place / with / the / fileというディレクトリに配置します 。このスクリプトは、現在のディレクトリ内のすべてのファイルに、どのディレクトリにいても実行できるようにするための便利な機能を提供します。

/ place / with / the / fileを追加するだけです $ PATHへ 次のコマンドで変数:

export PATH=$PATH:/place/with/the/file

これで、名前を入力するだけで、システム上のどこからでもスクリプトを実行できるようになります。入力時にフルパスを含める必要はありません。

パスを永続的に設定する

しかし、コンピュータを再起動するか、新しいターミナルインスタンスを作成するとどうなりますか?パスへの追加はなくなりました!これは仕様によるものです。変数$PATH は起動するたびにシェルによって設定されますが、新しいシェルを開くたびに常に新しいパスが含まれるように設定できます。これを行う正確な方法は、実行しているシェルによって異なります。

実行しているシェルがわかりませんか?ほぼすべての一般的なLinuxディストリビューションを使用していて、デフォルトを変更していない場合は、Bashを実行している可能性があります。ただし、これは簡単なコマンドで確認できます:

echo $0

これは「echo」コマンドの後にドル記号($)とゼロが続きます。 $ 0 コマンドの0番目のセグメントを表します(コマンド echo $ 0 したがって、「echo」という単語は$ 1)にマップされます。つまり、コマンドを実行しているものにマップされます。通常、これはBashシェルですが、Dash、Zsh、Tcsh、Ksh、Fishなどの他のシェルもあります。

Bashの場合は、上から行を追加するだけです。 export PATH =$ PATH:/ place / with / the / file 、シェルの起動時に読み取られる適切なファイルに。変数名を設定できる場所はいくつかあります。〜/ .bash_profileというファイルにある可能性があります。 、〜/ .bashrc 、または〜/.profile。 これらのファイルの違いは、(主に)シェルによって読み取られるときです。どこに置くかわからない場合は、〜/ .bashrc 良い選択です。

他のシェルの場合、開始時に構成を設定するための適切な場所を見つける必要があります。 ksh構成は通常、〜/ .kshrcにあります。 、zshは〜/.zshrcを使用します 。シェルのドキュメントをチェックして、使用するファイルを見つけてください。

これは簡単な答えであり、学ぶ価値のある癖や詳細がたくさんあります。 Linuxのほとんどすべてのように、物事を行うには複数の方法があり、状況のニーズやLinuxディストリビューションの特性により適した他の答えが見つかる場合があります。 $ PATH のどこにいても、ハッキングを楽しんでください。 あなたを連れて行くかもしれません。


この記事は元々2017年6月に公開され、編集者によって追加情報で更新されました。


Linux
  1. Linuxで環境変数とシェル変数を設定/作成する方法

  2. Linuxでシェルを変更する方法

  3. Linuxで$Path変数を設定する方法

  1. Linuxで$PATH変数を永続的に設定する方法を学ぶ

  2. Linuxターミナルとシェルをクリスマス化する方法

  3. Linux環境変数:LinuxVPSでの読み取りと設定の方法

  1. Linuxでプリンタを設定する方法

  2. Linuxで$PATHを永続的に設定する方法

  3. Linux/Unix で $PATH を永続的に設定するには?