Bash
123
どのような問題がありますか?

この記事は最終更新日から3年以上が経過しています。

投稿日

更新日

Bashプロンプトの変更

サーバを複数台管理していると、どこにログインしているかわからなくなります。

プロンプトには通常ホスト名が表示されるようになっていますが、クラウド環境などだと、自動的にアサインされた覚えにくい名前になっていたりするので、分かりやすい名前に変更したい場合があります。

環境

私はMacとLinux(CentOS)を使うことがほとんどなのでbashにします。
bash以外だと方法が違うので、適宜調べて下さい。

今の状態の確認

プロンプトの表示フォーマットはbashでは、PS1という環境変数に入っていますので、その形式を表示してみます。

echo "$PS1"
[\u@\h \W]\$

環境によっても違いますが、多くの場合、上記の様になっています。
意味は、

  • \u : ユーザー名
  • \h : ホスト名
  • \W : 今いるディレクトリ名
  • $ : 一般ユーザーの時$,rootの時#を表示

というものです。@等は、普通に表示されます。
上記の場合、

[hoge@hostname ~]$

という感じで表示されます。
ローカル環境で、OSのhostname等を自由に変更できる場合などはいいのですが、クラウド環境や変更できない場合は静的に変更してやります。と入っても、ハードコーディングするだけなので、難しくありません。

変更する

まず、変更したいのは、基本ホスト名だけです。あと、今いるディレクトリをフルパスで表示するようにしてみます。ここで、ホスト名をTEST_SERVERとしたいとします。

やりたい形式

[hoge@TEST_SERVER /var/www/html]$

表示のためのフォーマット

[\u@TEST_SERVER \w]$

最終的には.bashrcに設定を記述すればいいのですが、まずは一時的に試してみます。

export PS1="[\u@TEST_SERVER \w]$"

とすると瞬時にかわります。パターンが気に入らない場合は、いろいろといじってみるといいでしょう。

ただ、この場合、コンソールを閉じて、新しいコンソールを開くと、デフォルトの状態に戻ります。永続化したい場合は、上記の記述を.bashrcに記述します。

vi .bashrc

記述が終わったら、

source .bashrc

を実行し、値を反映させます。

なお、色も変えることができます。
色の指定は[\e[色指定m]というフォーマットで行います。

host名を別の色にして強調したい場合などは、

export PS1="[\u@\[\e[1;33m\]TEST_SERVER \[\e[m\]\w]$"

などとします。この場合、host名が黄色になります。
色は、指定した箇所から以下の以降の文字列全てに適用されるので、[e[m](色指定無し)でリセットします。

色コードは、

    m   指定なし
0;30m   Black
0;31m   Red
0;32m   Green
0;33m   Yellow
0;34m   Blue
0;35m   Purple
0;36m   Cyan
0;37m   White

という感じです。

どの色にしても、ケバケバしいので、強調は白を使えばいいでしょう。

export PS1="[\u@\[\e[1;37m\]TEST_SERVER \[\e[m\]\w]$"

参考

おまけ

プロンプトに絵文字を入れる

まず、絵文字が表示されるかどうかチェック。

echo -e '\U1F439'

表示できるようなら、下記のようにする。
``で囲むことで変数内でコマンドの実行が可能なります。あとは、\hなどと組み合わせます。

export PS1=`echo -e '\U1F439 '`" \h:\W $ "

Macでは、絵文字はcontrol + command + spaceで表示できるので、好きな絵文字を右クリックして、ユニコードを取得し変更します。
形式はU+xxxxの形式になっているので、\Uxxxxxと直してあげます。以上。

ユーザー登録して、Qiitaをもっと便利に使ってみませんか。
  1. あなたにマッチした記事をお届けします
    ユーザーやタグをフォローすることで、あなたが興味を持つ技術分野の情報をまとめてキャッチアップできます
  2. 便利な情報をあとで効率的に読み返せます
    気に入った記事を「ストック」することで、あとからすぐに検索できます
zaburo
こんにちは。自分用のメモをだらだら公開しています。
この記事は以下の記事からリンクされています
過去の3件を表示する

コメント

リンクをコピー
このコメントを報告

source .bahrc
のところ
source .bashrc
だと思いますノシ

1
どのような問題がありますか?
あなたもコメントしてみませんか :)
ユーザー登録
すでにアカウントを持っている方はログイン
123
どのような問題がありますか?
ユーザー登録して、Qiitaをもっと便利に使ってみませんか

この機能を利用するにはログインする必要があります。ログインするとさらに下記の機能が使えます。

  1. ユーザーやタグのフォロー機能であなたにマッチした記事をお届け
  2. ストック機能で便利な情報を後から効率的に読み返せる
ユーザー登録ログイン
ストックするカテゴリー