macターミナル(黒画面)プロンプト名($手前部分) 変更方法 【2019.07】



# 背景

最近 macOS Sierra をクリーンインストールしたばかりで、ターミナル(黒い画面)の名前($前部分,プロンプト名) がデフォルト状態でカッコ悪くなってました。
  
　　[ 変更前 ]
![image](https://qiita-image-store.s3.amazonaws.com/0/122142/96a940c8-0fcf-94c0-4542-013b8cde5484.png)
そこで変更を試みたところ、最終的には下図のように変更できましたが、かなり試行錯誤しましたので 方法を載せてみました。  

　　[ 変更後 ]
![image](https://qiita-image-store.s3.amazonaws.com/0/122142/41503e8b-799f-413b-2e15-db6a29a10ebb.png)


# 参考情報

- [Vimチートシートを作りました（超初心者用） - Qiita](http://qiita.com/hattys2/items/56d973ad4f197b751501)
<br>  
- [[Mac] ターミナルの$前の出力内容をカスタマイズする - YoheiM .NET](http://www.yoheim.net/blog.php?q=20140309)
<br>  
- [今さら聞けない！ターミナルの使い方【初心者向け】 | TechAcademyマガジン](https://techacademy.jp/magazine/5155)
<br>  
- [Mac(OSX)のホスト名変更(GUIとCLI(scutil)) - Qiita](http://qiita.com/HOKARI_Yutaka/items/8047e5ec763adcac2563)
<br>  
- [ユーザーの環境変数を設定するbashの設定ファイルと、カスタムプロンプトについて | OXY NOTES](http://oxynotes.com/?p=5418#3)
<br>  
- [Macターミナルのプロンプト変更方法 | D-Box](http://do-zan.com/mac-terminal-change-prompting/)



# 今回 実施したコマンド

1. ターミナル起動
<br><br>
1. 現在のデフォルトプロンプト名が表示される  
<br>
**ユーザー名noMacbook:~ ユーザー名$**
<br><br>  
1. 現在のフォルダ階層を確認   
<br> 
ユーザー名noMacbook:~ ユーザー名$ **pwd** ↩︎   
**/Users/ユーザー名**
<br><br>  
1. 現在の設定内容を確認
<br>  
ユーザー名noMacbook:~ ユーザー名$ **echo $PS1** ↩︎  
**\h:\W \u\$**
<br><br>  
1. 時間 現在のディレクトリ(フォルダ)名 \$という表示に一時的に変更。
<br>
ユーザー名noMacbook:ユーザー名$ **PS1="\t \W $**" <br>
**23:22:54 ~ $** ← 変更できたことを確認 
<br>  
![image](https://qiita-image-store.s3.amazonaws.com/0/122142/4656fc3f-1a33-6a22-4100-6e63a2d3d6d7.png)
<br>  
ただし、この状態は一時的な変更であって、新しいターミナルタブ/ウインドウには反映されないため、/etc/bashrcというファイルを編集し保存する必要がある。
<br><br>  
1. Vimエディターで、/etcフォルダにある bashrc を編集する。<br>
  ( 独特な操作方法であるVimエディターが使える必要があります。<br>
『 少しずつ覚えるVim /Qiita - 
https://qiita.com/TLamp/items/3c5a40272dae74052d95 』 )
<br>  
ユーザー名:16:41:32 ~ $ **vim /etc/bashrc**
<br><br>  
1. 下図が bashrc ファイルのテキスト内容です。
<img width="698" alt=" 2017-02-16 16.07.14.png" src="https://qiita-image-store.s3.amazonaws.com/0/122142/6d21c2bf-76ee-7ba6-86b6-07e0f2c41d13.png">  
真ん中にある `PS1='\h:\W \u\$ '` を好きな形式に編集してください。  
<br>
私は、  
`時間 現在のディレクトリ(フォルダ) $` という形式にするため、  
`\t \W $` という内容に変更しました。
<br><br>  
1. :wq で保存終了させます。問題なければ 10. へ。
![image](https://qiita-image-store.s3.amazonaws.com/0/122142/70a3b89a-dd5d-4188-32cb-9bef02dac0f0.png)
<br>
1. もし <font color="red""> E45: ‘readonly’ option is set </font>という赤いメッセージが出た場合
![image](https://qiita-image-store.s3.amazonaws.com/0/122142/f72469f0-bd77-9a3b-babf-5f1c1deea70b.png)
<br>
[viでsudo忘れて、保存できない時の対処方 | koba206の開発WIKI](http://dev.koba206.com/?p=298)  
を参考に、  
**:w !sudo tee %**   
を入力/Enter
![image](https://qiita-image-store.s3.amazonaws.com/0/122142/cddf67fa-aaa2-db39-4f02-177e8a434409.png)
<br>
**PASSWORD** を入力/Enter  
**:q!** を入力/Enter 
<br><br>  
1. これで完了です。  

ターミナルを再起動したり新しいタブ/ウインドウで、変更されたことが確認できるはずです。


# 文字色の変更方法

水色（Cyan）に変更したい時
` $ PS1="\[\033[36m\]\t \w $ \[\033[0m\]" `

<img width="466" alt="Screen Shot 2018-05-17 at 20.37.29.png" src="https://qiita-image-store.s3.amazonaws.com/0/122142/8246e13c-b808-fd08-4cba-aea0608fc38e.png">

|他の色||
|--:|:--|
| 30 | Black |
| 31 | Red |
| 32 | Green |
| 33 | Yellow |
| 34 | Blue |
| 35 | Magenta |
| 36 | Cyan |
| 37 | White |

上のコマンド図の 36 の数字を変更するだけです。

<img width="549" alt="Screen Shot 2018-05-17 at 20.42.02.png" src="https://qiita-image-store.s3.amazonaws.com/0/122142/22800d8f-b70a-1303-cd41-0241874f1103.png">

永久保存する際は、上記で解説したとおり /etc/bashrc を vim で編集/保存します。

かなり見やすくなり満足です(^ ^)
<br> 

# 追記 2018/08/19 - 改行表示

後日 @HitomiHoshisaki さんが私の記事を元に
トライくださり、改行を入れて より見やすくされました。
私もその方が見やすいので 同じように改行を入れ レイアウトを修正いたしました(^^)

現在の設定
　```PS2='\n\[\033[36m\]\t \w\n$ \[\033[0m\]'```

参考 : ターミナルを自分好みにカスタマイズするメモ - Qiita
 https://qiita.com/HitomiHoshisaki/items/0de4c295de9f2200af8d


# 追記 2019/04/09 - gitブランチを常時表示

gitを頻繁に使うようになったので、

プロンプトをカスタマイズしてgitブランチを表示する @caad1229 - Qiita
https://qiita.com/caad1229/items/6d71d84933c8a87af0c4

上記記事を参考に、gitブランチを常時表示させておくように修正いたしました。

以下が私の現時点最新の /etc/bashrc ファイルソースです。

`# ターミナルプロンプト表示変更については、↓ こちらの１行です。`
という部分が今回の修正箇所ですね。

```sh:etc/bashrc.
function parse_git_branch {
    git branch --no-color 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ [\1]/'
}

# System-wide .bashrc file for interactive bash(1) shells.
if [ -z "$PS1" ]; then
   return
fi

# ターミナルプロンプト表示変更については、↓ こちらの１行です。
PS1='\n\[\033[36m\]\t \w $(parse_git_branch)\n$ \[\033[0m\]'


# Make bash check its window size after a process completes
shopt -s checkwinsize

[ -r "/etc/bashrc_$TERM_PROGRAM" ] && . "/etc/bashrc_$TERM_PROGRAM"# System-wide .bashrc file for interactive bash(1) shells.
if [ -z "$PS1" ]; then
   return
fi

PS1='\h:\W \u\$ '
# Make bash check its window size after a process completes
shopt -s checkwinsize

[ -r "/etc/bashrc_$TERM_PROGRAM" ] && . "/etc/bashrc_$TERM_PROGRAM"                                                                    
```

# 追記 2019/07/10 - 最終的な完成表示

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/122142/52f2e45c-1cb8-46bb-7e2b-71c63b00450d.png" width="400px">

上記にて修正後のイメージが無く少々分かりづらいかなと感じたため、
今更ですが現在の私のターミナルプロンプト表示画像を加えました。
今のところ この表示にしてからストレスは感じていないのでオススメです。
あとは色や改行数は好みで良いと思います。ではでは。

Fin
<br><br>