個人環境変数に同意する

個人環境変数に同意する

Unix個人環境変数を設定するルールはありますか?$HOME/.bash_profileその代わりに入れなければならないという内容を読みました$HOME/.bashrc。それにもかかわらず、私は独自の変数を区別する方法を提供することを検討しています。それで忘れても設定をしたのか一目でわかります。たとえば、端末でオートコンプリートを実行するときに、C++言語規則の1つと同様に、変数にアンダースコアまたはマイナス記号「m」で始まるようにすることができます。おそらく絶対的な答えはないということを知っていますが、これを達成するのに役立つかもしれないいくつかのベストプラクティスとルールを聞きたいです。つまり、システム環境変数と個人環境​​変数を簡単に区別する方法を提供します。

ベストアンサー1

埋め込み環境変数を設定する場所環境変数を設定するための最良の distro/shell 独立した方法は何ですか?

命名に関して環境変数を設定する主な理由は、アプリケーションでそれを使用するため、名前を選択できないためです。

環境変数には名前空間の概念はありません。最も近い方法は通常、型のプレフィックスを選択することですSOMETHING_(つまり、プレフィックスはアンダースコアで終わり、変数SOMETHING_FOO、、SOMETHING_BAR...を持ちます)。ただし、ほとんどの変数は特定のアプリケーションに限定されず、さまざまなアプリケーションに適用されます。変数が1つのアプリケーション内でのみ意味がある場合は、通常コマンドラインオプションでなければなりません。したがって、名前空間はあまり必要ありません。

コマンドラインでのみ使用する変数を定義する場合は、環境変数を使用するのではなく、次のように使用してください。シェル変わりやすい。 (望むよりbashの環境変数とエクスポートされた環境変数の違い)シェルスクリプトで変数を定義して使用しない場合、exportこれは環境変数ではなくシェル変数であり、定義したシェルでのみ表示されます。したがって、コマンドラインで使用する変数を定義する場合:

  • シェル対話型開始ファイル(~/.bashrcbash、~/.zshrczsh、~/.config/fish/config.fishfishの場合)で定義します。
  • それをしないでくださいexport
  • 一般的なルールがあります。環境変数はすべて大文字で、シェル変数はすべて小文字です。

使用している環境変数と競合しない限り、目的の名前を選択してください(環境変数は自動的にシェル変数にインポートされます)。最初は下線を使用しないことをお勧めします。これは、下線が bash および zsh 完成システムで内部的に使用されるためです。

おすすめ記事