カレンダー

08 | 2023/09 | 10
- - - - - 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 27 28 29 30

広告



最近の記事

カテゴリー

DATE: CATEGORY:TECH


bashrcの設定で、コマンドプロンプト上の色をかえたり、
表示内容をかえたり、あれこれするための覚書。

前提


bashで表示される内容をいろいろ変える方法。

「/etc/profile」とか「~/.bashrc」とかにPS1の環境変数を設定すると、
Telnetとかで表示されるシェルの色とか内容とかを色々とかえられます。

「/etc/profile」に設定すると基本的にbashを使う全ユーザに反映されます。
「~/.bashrc」に設定するとbashを使う各ユーザ毎に設定ができます。

そのサンプルを覚書として、φ(。。)メモ。

表示内容を変えてみる


まずは、基本形。こんな感じで設定してみる。

例) export PS1="[\u@\h:\w]\$ "

と、こんな感じのシェル表示になります。

表示) [root@KURO-BOX:/var/log]#

PS1に設定した「\u」とか「\h」のパラメータが値を引っ張ってきます。
他にも設定できる内容は、こんな感じ。好きなシェルを表示させよう。

設定できる変数一覧
記号解釈
\aベル(ビープ音)をならします(ASCII のベル文字 07)
\d"曜日 月 日"の形式の日付
\hホスト名(最初の . までの名前)
\Hホスト名
\n改行
\r復帰
\sシェル名(標準だと -bash が表示)
\t時刻 HH:MM:SS 形式(24時間) H = Hour = 時、M = Minutes = 分、S = Seconds = 秒
\T時刻 HH:MM:SS 形式(12時間)
\@時刻 am/pm をつけたもの。Lang=Jaの場合 HH:MM (午前|午後)となる。
\u現在のユーザー名
\vbash のバージョン
\Vbash のバージョン・リリース番号など詳細
\w現在のディレクトリ(フルパス)
\W現在のディレクトリ名
\!コマンドのヒストリー番号
\#コマンドのコマンド番号(ログイン後何回実行したか)
\$UID が 0 、つまりrootであれば『 # 』、それ以外は『 $ 』
\\バックスラッシュ
\[表示されない文字列(エスケープシーケンス/端末制御シーケンス)を埋め込む
\]表示されない文字列の終わり

外部コマンドを呼び出してみる


dateコマンドを挿入してみる。

例) export PS1="[\$(date)][\u@\h:\w]\$ "

と、こんな感じのシェル表示になります。

表示) [2011年 3月 19日 土曜日 01:13:45 JST][root@KURO-BOX:/var/log]#

外部コマンドを挿入するときは、「\$(コマンド)」ってな感じで挿入すると出てきます。

ちょっとはまったのは、シングルクォートだとうまく動かなかった。
export PS1='[\$(date)][\u@\h:\w]\$ ' → [#(date)][root@KURO-BOX:/var/log]#
なんでかな?まぁ、ダブルクォートではさむようにしましょう。
export PS1="[\$(date +)][\u@\h:\w]\$ "

では、色をつけてみよう。


緑色にしてみよう。

例) export PS1="\[\e[1;32m\][\u@\h:\w]\$\[\e[00m\] "

と、こんな感じのシェル表示になります。

表示) [root@KURO-BOX:/var/log]#

要は、「\[\e[1;32m\]」と「\[\e[00m\]」にはさまれた箇所が緑になってるわけですね。

ちょっとややこしいけど、大まかには数字の部分は色を意味していて、
それ以外はちょこっとした設定関連。

そんなちょこっとした設定一覧
記号解釈
\[シーケンスの開始
\e[1;32これ以降を緑色にする。\033[1;32mでもOK
\e[00m エスケープシーケンス(緑色)をこれ以降で無効にする。\033[00mでもOK
\]シーケンスの終り

あとは「1;32」の所を変更して、色を変えてみよう。
コード;値
黒色(Black)0;30
青色(Blue)0;34
緑色(Green)0;32
水色(Cyan)0;36
赤色(Red)0;31
紫色(Purple)0;35
明灰色(Light Gray)0;37
暗灰色(Dark Gray)1;30
Light Blue1;34
Light Green1;32
Light Cyan1;36
Light Red1;31
Light Purple1;35
黄色(Yellow)1;33
白色(White)1;37
すべての属性を無効00
※コードを省略した時は「0」の扱い


【参考】bashの動き


zu01s.gif
ユーザーがログインすると、まず/etc/profileを読み込み、次に~/.bash_profileを読み込みます。
 → ~/.bash_profileが存在しない場合は、~/.bash_loginを読み込みます。
 → ~/.bash_loginもない場合は~/.profileを読み込みます。
 → ~/.bash_logoutは、ログアウト時に読み込まれるファイルです。
 → .bashrcは、プロセスとしてbashを起動したときに読み込まれます。


タグ : TECHBASHプロンプト覚書

Comment

exportはいりません

コメントの投稿

管理者にだけ表示を許可する


トラックバック


この記事にトラックバックする



copyright © なんとなしの日記 all rights reserved.
内職☆在宅ワークの最強は?アフィリエイト!. 初心者だってカッコ良いホームページ作るぅ!
Powered by FC2ブログ
Related Posts Plugin for WordPress, Blogger...