bashのプロンプトの見た目変更
最近見た目をいじる機会があり、エスケープ文字の読み方に慣れなかったのでメモ。
を参考に設定を行った。
最終的に
\[\e]0; \u@\h: \w\a\]\[\033[35m\]\t\[\033[m\] \[\033[32m\][\w]\[\033[0m\]\n\[\033[1;36m\]\u\[\033[1;33m\]-> \[\033[0m\]
これになった。
以下、詳細。
文字列 | 意味 |
---|---|
\[ | 表示されない文字列(エスケープシーケンス/端末制御シーケンス)を埋め込む |
\] | 表示されない文字列の終わり |
\e | ASCIIのエスケープ文字(ESC)を表示する |
\033 | ASCIIのエスケープ文字(ESC)を表示する |
\u | 現在のユーザー名を表示する |
\h | ホスト名のうち最初の「.」までの部分を表示する |
\w | 現在の作業ディレクトリを、ユーザーのホームディレクトリからの絶対パスで表示する |
\a | ASCIIのベル文字(BEL)を表示する |
\t | 現在の時刻を24時間の「HH:MM:SS」形式で表示する |
\n | 改行する |
\e] | ESC ] という意味。Operating System Command(OSC)シーケンスの開始 |
OSC 0 ; Pt BEL | ウィンドウタイトルを Pt に変更する。 |
\[\e]0; \u@\h: \w\a\] | ウィンドウタイトルを\u@\h: \wに対応する文字列に変更する。 |
\033[ | ESC [ という意味。CSIシーケンスの開始 |
CSI Pm m | 文字属性をPmに設定する。省略時の Pm の値は 0。文字属性は";"で区切る事によって複数指定出来る。 |
\[\033[35m\] | 文字色を赤紫に設定する。 |
\[\033[m\] | すべての文字設定を解除する。 |
\[\033[0m\] | すべての文字設定を解除する。 |
\[\033[32m\] | 文字色を緑に設定する。 |
\[\033[1;36m\] | 太字属性を設定し、文字色を水色に設定する。 |
\[\033[1;33m\] | 太字属性を設定し、文字色を黄色に設定する。 |