bashのプロンプトに色をつける

bashのプロンプトは環境変数のPS1を変えればいい。ここではちょっと特殊な色をつける方法。

色をつけるにはANSI エスケープシーケンスを使う。エスケープシーケンスを使う場合は、\[ と \]で囲ってその中に書く。エスケープシーケンスで色をつけるには、ESC[値;値m]の形で記述する。ここでESCはオクタルに直して\033になる。値のところは以下の様になる。(参考

Foreground colors
30 Black
31 Red
32 Green
33 Yellow
34 Blue
35 Magenta
36 Cyan
37 White

Background colors
40 Black
41 Red
42 Green
43 Yellow
44 Blue
45 Magenta
46 Cyan
47 White

実験。プロンプトを赤のAAAにする。

実験。背景が青で文字を黄色にする。

書き方がわかりにくいが、以下の太字のxxの部分を上の色コードに変えればいい。

AAAの部分は実際には\uとか\hとか\Wになるのが普通。これらの意味はman bashで”PROMPTING”を検索すれば分かる。

Ubuntuの場合デフォルトのPS1は以下のようになっている。echo $PS1で確認できる。

debian_chrootと言うのはよく分からないのでスルーするとして、これに色を加えて以下の様にしてみた。

このプロンプトを永続的に使うには、~/.bashrcに記述する。

Leave a Reply

Your email address will not be published. Required fields are marked *

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)