web-dev-qa-db-ja.com

PS1変数に色付きのbashプロンプトが表示されなくなりました

Centos6.5でVPSを実行しています

セットアップしました~/.bash_profile次のスクリーンショットのように:

enter image description here

以前は次のような出力が得られました。 enter image description here

WHM/Cpanelをインストールしたので、色付きのプロンプトが表示されなくなりました。

echo $PATHショー:

/usr/local/jdk/bin:/home/jay/Perl5/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11R6/bin:/home/jay/bin

どうすればこれを修正できますか?誰か助けてもらえますか?

それ以外はすべて構成に従って機能します。 Grepとlsは色付きの出力を示しています。以前のコマンドと出力をすばやく見つけるのに便利だと思うので、これが機能する必要があります。

3
Jay

Bashによる初期化ファイルの管理は奇妙です。ログインシェルでは、bashは/etc/profile~/.bash_profileのみを読み取ります。インタラクティブな非ログインシェルでは、bashは/etc/bash.bashrc~/.bashrcのみを読み取ります。 (私は少し単純化しています。本当に完全な詳細が必要な場合は、マニュアルを読んでください。)

狂気を抑えるには、~/.bash_profileの次のコンテンツを使用します。

# Read the Shell-agnostic login hook
if [ -e ~/.profile ]; then . ~/.profile; fi
if [[ $- = *i* ]]; then
  # This is an interactive Shell, so read bash's interactive login hooks
  # (which bash omits in login shells)
  if [[ -e /etc/bash.bashrc ]]; then . /etc/bash.bashrc; fi
  if [[ -e /etc/bashrc ]]; then . /etc/bashrc; fi
  if [[ -e ~/.bashrc ]]; then . ~/.bashrc; fi
fi

環境変数の定義(例:PATHEDITOR)などのログイン時のものを~/.profileに配置します。プロンプト設定やエイリアスなどのインタラクティブなものを~/.bashrcに配置します。

詳細については、 ログインか非ログインかに関係なく常にインタラクティブモードでソースされるBashファイルはありますか?ログインシェルと非ログインシェルの違い)を参照してください。 ? および 。bashrcと.bash_profileの違い

他の誰かが同じ問題に遭遇した場合に備えて、私自身の質問に答えるだけです。

/etc/bashrcのPS1変数をすべてのユーザーに割り当てるか、コメントアウトして個々のアカウントに/.bash_profileを使用することができます。私の場合、/.bash_profileはすでにセットアップされており、/etc/bashrcでPS1を無効にするだけで済みました。

次のスクリーンショットを参照してください。変更後、再起動またはsshを再度実行します。 cPanel開発者が残したコメントに注目してください。

enter image description here

Slyxと皆様の貴重なご回答に感謝いたします。

0
Jay