Linux のコマンドプロンプト表示を自分好みに設定する

LINEで送る
Pocket

Ubuntu にログインすると taro@hostname:~/$ (ユーザ名@ホスト名:カレントディレクトリ$) というコマンドプロンプトが表示されます。


コマンドを実行する上で必要な情報が表示されているので不都合はありませんが、ここに表示されている情報は環境変数PS1に定義されていてこの環境変数を変更して上げるだけで、表示される情報、色を簡単に変える事ができます。


管理しているサーバのプロンプトの表示を、自分の使っているローカルのプロンプトと少し変えておけばサーバ上での誤操作の回避にもつながります。

まず現在の設定を確認します

$ 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\]\$

最初の [\e]0;\u@\h: \w\a] は、現在の設定をクリアする。


${debian_chroot:+($debian_chroot)} の debian_chroot は、chroot コマンドでルートディレクトリ変更した際に用意されている変数でデフォルトは空になっています。よって [\033 .. より設定を変更していきます。

まずは、デフォルトの値を環境変数 PS1 に入れます。

$ PS1="\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ "

文字の装飾は [\033[…m] より行い、 [\033[00m] でリセットします。
デフォルトでは、Light Green ユーザ名@ホスト名 Light Greenクリア : Light Blue カレントディレクトリ $ の設定になっているのでLight Green を Light Cyan に変更してみます。

$ PS1="\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;36m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ "

設定を戻したい時は、bash の設定ファイルを再読み込みます。

$ . ~/.bashrc

設定を保存したい場合は、~/.bashrc に PS1= を追記すると再ログイン時に有効になります。

\u : ユーザ名
\h : ホスト名
\W : カレントディレクトリ名
\w : カレントディレクトリ名(~ からのフルパス)
$ : 一般ユーザの時 $、rootの時 # を表示
\033 : 制御文字(ESC)

Black       00;30m     Dark Gray     01;30m
Blue        00;34m     Light Blue    01;34m
Green       00;32m     Light Green   01;32m
Cyan        00;36m     Light Cyan    01;36m
Red         00;31m     Light Red     01;31m
Purple      00;35m     Light Purple  01;35m
Brown       00;33m     Yellow        01;33m
Light Gray  00;37m     White         01;37m
LINEで送る
Pocket

  • このエントリーをはてなブックマークに追加

コメントを残す

*

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください