Ubuntu と CentOS のプロンプト表示色を見てみる
Ubuntu と CentOS の、デフォルトでのプロンプト表示色を見てみます。
Ubuntu 16.04.1
Ubuntu のデフォルトでは、こうなっていました。
| $ echo $PS1
\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$
|
~/.bashrc では以下のように定義されていました。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 | if [ -n "$force_color_prompt" ]; then
if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
# We have color support; assume it's compliant with Ecma-48
# (ISO/IEC-6429). (Lack of such support is extremely rare, and such
# a case would tend to support setf rather than setaf.)
color_prompt=yes
else
color_prompt=
fi
fi
if [ "$color_prompt" = yes ]; then
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi
unset color_prompt force_color_prompt
# If this is an xterm set the title to user@host:dir
case "$TERM" in
xterm*|rxvt*)
PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
;;
*)
;;
esac
|
CentOS 7.2.1511
CentOS のデフォルトでは、こうなっていました。特に色の指定はありません。
CentOS のプロンプトに色を付ける
Ubuntu はデフォルトで緑色(32m)になっていました。色で直感的に OS を見分けられるよう、CentOS はシアン(36m)にしてみます。CentOS の ~/.bashrc に以下を追記します。
| export PS1='\[\033[01;36m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
|
または、ホストだけでは無く、FQDN 全体をプロンプトに表示する場合は以下のように H を指定します。
| export PS1='\[\033[01;36m\]\u@\H\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
|
後はログアウト/ログインし直すか、source ~/.bashrc を実行して変更を反映します。
root のプロンプトだけ、色を変更する
root と一般ユーザを区別する為に、root のプロンプトだけ色を変更したい場合は /root/.bashrc 等に以下を追記します。色は好みで変更します。
| export PS1='\[\033[01;31m\]\u@\H\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
|