対話型シェルのグローバル設定

対話型シェルのグローバル設定

/etc/profileグローバル環境変数を設定するファイルがあることを知っています/etc/bashrc。おそらくその目的を誤解した可能性があります...

グローバルbash_profileファイルはありますか?

私はMac OS Xを使用しています。

ベストアンサー1

これは呼び出されませんが、bash_profileグローバルbash設定の標準的な場所です/etc/bash.bashrc/etc/profileこれは通常、シェルがbashの場合に呼び出されます。たとえば、私のファイルには/etc/profile次のものがあります。

if [ "$PS1" ]; then
  if [ "$BASH" ] && [ "$BASH" != "/bin/sh" ]; then
    # The file bash.bashrc already sets the default PS1.
    # PS1=’0
    if [ ‐f /etc/bash.bashrc ]; then
      . /etc/bash.bashrc
    fi
  fi
fi

使用法の観点からは、/etc/profileすべてのBourne互換シェル(sh、bash、kshなど)に対してシステム全体の構成が提供されています。/etc/bash_profile設定ファイルの目的はログインシェルの動作を制御することであるため、通常は同等のファイルは必要ありません。通常、bashに関連する操作は実行したくありません。/etc/bash.bashrcbashに固有で、ログインシェルと非ログインシェルの両方に対して実行されます。

悪いことに、OS Xにはそのような機能もないようです/etc/bash.bashrc。これはOS Xの端末に関連している可能性があります。デフォルトではログインシェルとして実行されます。したがって、違いは消えます。

ターミナルウィンドウのガイドラインの1つの例外は、Mac OS XのTerminal.appです。このアプリはデフォルトで、新しいターミナルウィンドウごとにログインシェルを実行し、.bashrcの代わりに.bash_profileを呼び出します。他のGUI端末エミュレータも同じことができますが、ほとんどはそうではありません。

私はOS Xを実行していないので、私の知識の範囲はOS Xに制限されています。

おすすめ記事