Bash 프롬프트 사용자 정의

명령행의 디폴트의 프롬프트라고 [hoge@localhost ~]$ (과)과 대략 유저명, 호스트명, 디렉토리명을 표시해 줍니다.
이것은 이것으로 좋지만 Git 상태 정보와 시간을 볼 수 있으면 더 편안합니다.
다만, 정보가 많이 옆으로 길어져 버려 커멘드를 입력할 때마다 접혀가 들어가 보기 힘듭니다.

시행착오의 결과, 2행 프롬프트로 하는 것이 제일 편리성이 높았으므로 설정 방법을 정리합니다.

환경


  • Mac
  • 표준 터미널 앱
  • Bash

  • 완성형





    완성은 이 두 줄 프롬프트입니다.
    ディレクトリ名 Gitブランチ名 ユーザー名@PC名 [時:分:秒]
    $ 
    

    준비



    bash-completion 설치



    Git의 상태 정보를 보려면 bash-completion을 설치해야합니다.
    $ brew install bash-completion
    

    설정



    ~/.bash_profile
    # bash-completion 読み込み
    if [ -f $(brew --prefix)/etc/bash_completion.d/git-prompt.sh ]; then
      . $(brew --prefix)/etc/bash_completion.d/git-prompt.sh
    fi
    
    if [ -f $(brew --prefix)/etc/bash_completion.d/git-completion.bash ]; then
      . $(brew --prefix)/etc/bash_completion.d/git-completion.bash
    fi
    
    # プロンプトカラー設定
    _CYAN="\[$(tput setaf 6)\]"
    _GREEN="\[$(tput setaf 2)\]"
    _YELLOW="\[$(tput setaf 3)\]"
    _RESET="\[$(tput sgr0)\]"
    
    # プロンプトに各種情報を表示
    GIT_PS1_SHOWUPSTREAM=1
    GIT_PS1_SHOWDIRTYSTATE=1
    GIT_PS1_SHOWUNTRACKEDFILES=1
    GIT_PS1_SHOWSTASHSTATE=1
    
    export PS1="${_CYAN}\w${_GREEN}\$(__git_ps1 ' %s')${_RESET} ${_YELLOW}\u@\h${_RESET} [\t]\n\$ "
    unset _CYAN _GREEN _YELLOW _RESET
    

    기본 설정


    export PS1="[\u@\h \W]\$ "
    

    참고


  • 「Git 보완을 하지 않는다」 「git status를 하루 100회는 사용한다」 그런 당신에게 희소
  • 좋은 웹페이지 즐겨찾기