~/.profile, ~/.bashrc, ~/.bash_profile, ~/.gnomerc, /etc/bash_bashrc, /etc/screenrc... の違いは何ですか?

~/.profile, ~/.bashrc, ~/.bash_profile, ~/.gnomerc, /etc/bash_bashrc, /etc/screenrc... の違いは何ですか?

答えだからそしてアクベント、ナビゲーション(およびタイトルの読み取り)、および$HOME/etc/を含む環境変数を設定するために使用できる複数のファイルを表します。

  • ~/.profile
  • ~/.bashrc
  • ~/.bash_profile
  • ~/.gnomerc
  • ~/.Rprofile
  • /etc/bash_bashrc
  • /etc/profile
  • /etc/screenrc

/etc/すべてのユーザーに適用されるファイルとユーザー固有の$HOMEファイルを収集しました。また、.profile実行時にはロードされず、ログイン時にロードされることも収集しました.bashrc/bin/bashまた、プログラムごとに設定ファイル(例:R)が異なることも学びました.Rprofile。しかし、いくつかの説明が欲しい。

  • *rcファイルと基本的に違いますか*profile
  • そのようなファイルの範囲は何ですか(たとえば、Linuxで一般的に使用されるファイル)
  • 階層はあります(例:.bashrcオーバーライドで設定された変数.settings
  • そのような文書の良い参考資料は何ですか?このファイルのオプションはどうですか?

リンクの問題

答え1

設定ファイルの設定は、あなたの質問で提案したものよりはるかに均一ではありません。 「クラス」、「階層」、グローバル「構成皇帝」、汎用構文を指示する委員会、または必要なものなど、他のきちんとした一般化はありません。R、GNOMEデスクトップ環境bashなどのスタンドアロンアプリケーションが多数あり、screenすべて独自の動作方法を持っているため、質問に答えるには各個々のプログラムのマニュアルを確認する必要があります。特定特定のファイルに関する質問です。一時的に見える場合、その理由は、ほとんどのUnix / Linuxソフトウェアが異なる人々によって異なる目的で開発され、すべてが少しずつ異なる構成を持っているためです。

他の質問に対する段階的な答え:

  • *rcそして*profileそれはあまり意味がないので、質問に実際に答えることはできません。 「rc」は、構成ファイルの一般的な略語またはサフィックスです。その語源は古代(コンピュータ時代)にさかのぼり、おそらくコマンドを実行することを意味します。ルーン川)。アプリケーションが同じ単語を使用してもルールに同意するわけではありません。 「プロファイル」はあまり一般的ではないサフィックスです。

  • 「範囲」を定義します。ほとんどのアプリケーションは、関連していない他のアプリケーションと構成ファイルを共有しません。可能な例外の1つは/etc/profileandであり.profile、これはいくつかの異なるシェル(少なくともshおよび含むbash)で使用できます。というものがあります。環境実行中の各プロセスに関連して、そのプロセスの動作に影響を与える可能性がある変数を含めることができます。通常、環境変数は適切なシェル構成ファイルまたは使用しているグラフィックスデスクトップ環境の構成ファイルによって設定されます。.inputrcreadlineやGTKなどの「ライブラリ」の設定ファイルもあります。.gtkrc*これはライブラリを使用するすべてのアプリケーションに影響します。

  • いいえ、構成ファイルのグローバル階層はありません。もう一度、関連する特定のプログラムのドキュメントを参照してください。bash手動のためのbash。一般的に信頼できる一般的な規則は、のユーザー設定が$HOME無視されることです/etc。これは通常、システムファイルの後にユーザーファイルを読み取り、後で設定が以前の設定よりも優先されるように行われます。ただし、これは保証されておらず、明確な答えを得るには、使用している特定のプログラムのマニュアルを参照する必要があります。

  • 「クラス」はありません。少なくとも質問にリストされているすべてのファイルを含むほど一般的なわけではないので、これらの「クラス」への参照質問は意味がありません。もう一度使用している特定のプログラムのマニュアルを参照してください。

答え2

私の考えでは、この質問はさまざまなレベルで広すぎると思います。たとえば、あなたが尋ねる質問は少なくとも4つ問題の手順はさまざまです。/etcとの構成ファイルの違いを見てみましょう$HOME

Unixはマルチユーザーオペレーティングシステムです。つまり、、またはsshを使用して、さまざまな人がtelnetシステムを使用できますXorg。ユーザーに標準化された設定を提供するためにシステム全体の設定を提供できます/etc/。これは通常、ディストリビューションでのようなグローバル構成を提供するためにも使用されbashますscreen

一方、一部のユーザーは、キーバインディング、色、外観などのプログラム設定自体をカスタマイズしたいと考えています。これはシステム全体の設定を提供し、$ HOMEの設定ファイルを使用すると、ユーザーはシステム全体の設定を変更/上書きできます$HOME/etc/

答え3

一部の回答は次のとおりです。この投稿:

.bashrcBashがインタラクティブに起動されるたびに実行されるシェルスクリプト。

新しいログインシェルが起動したときにのみ比較して.bash_profile実行します。.profile(bash-l)

コマンドを一度実行するか、対話型シェルが起動するたびに実行するかによって、コマンドがvs.bashrcに入るかどうかを選択できます。.bash_profile

関連情報