web-dev-qa-db-ja.com

なぜdebianのデフォルトのbashシェルは無色なのですか?

デフォルトのDebianシェルが無色であり、答えが見つからなかった理由を探していました。

なぜDebianシェル(bash)はデフォルトで無色なのですか?

6
Michael Wilcox

デフォルトのDebianシェルが無色である理由

このため(Vanilla Debianインストールの.bashrcから、強調してください):

#端末に機能がある場合は、色付きのプロンプトのコメントを外します。 ユーザーの注意をそらさないようにデフォルトでオフ
#:ターミナルウィンドウのフォーカス
#はプロンプトではなくコマンドの出力にあるべきです
#force_color_Prompt = yes 
 
 if [-n "$ force_color_Prompt"]; then 
 if [-x/usr/bin/tput] && tput setaf 1>&/ dev/null;次に
#色のサポートがあります。 Ecma-48 
#(ISO/IEC-6429)に準拠していると想定します。 (そのようなサポートの欠如は非常にまれであり、そのような
#ケースはsetafではなくsetfをサポートする傾向があります。)
 color_Prompt = yes 
 else 
 color_Prompt = 
 fi 
 fi

つまり、これは「機能」であり、必要に応じて設計上の選択です。

9
maulinglawns

「Debianでrootbashプロンプトがデフォルトで無色になっているのはなぜですか?」という意味ですか、そうですか?

もしそうなら、それは単に /etc/profile —またはむしろ、/etc/bash.bashrc —非常に単純なプロンプトを定義します:

# set a fancy Prompt (non-color, overwrite the one in /etc/profile)
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '

および rootのデフォルト.bashrc オーバーライドしません:

# Note: PS1 and umask are already set in /etc/profile. You should not
# need this unless you want different defaults for root.
# PS1='${debian_chroot:+($debian_chroot)}\h:\w\$ '
# umask 022

詳細は Debianシステムで/root/.bashrcと/root/.profileはどこから来るのですか? を参照してください。

3
Stephen Kitt

これが「debianでルートシェルを色分けする方法」の検索結果のトップだったので、ここに解決策を投稿します。/root/.bashrcをコピーして/etc/skel/bashrcファイルで上書きします。

このファイルは、インストールされたrootよりもはるかに堅牢であり、システムで作成された新しいユーザーが使用するデフォルトでもあります。

以下は、私が長年に渡って調整したlsのカラーリングの抜粋です

alias la='LS_COLORS="mh=1;37" ls -A'
alias l='LS_COLORS="mh=1;37" ls -CF'
alias ll='LC_COLLATE=C LS_COLORS="mh=1;37" ls -lA --si --group-directories-first'
2