함수에 의해 프롬프트의 일부를 동적으로 설정하려고합니다 .bashrc
.
asdf ()
{
echo -n $(pwd)
}
PS1="\u@\h:\w $(asdf)\$ "
쉘을 열면 처음에 기대하는 것을 얻을 수 있습니다.
$ bash
darthbith@server:~/test /home/darthbith/test$
그러나 디렉토리를 변경할 때 함수로 정의 된 부분은 변경되지 않습니다.
darthbith@server:~/test /home/darthbith/test$ cd ~/test2
darthbith@server:~/test2 /home/darthbith/test$
내 실제 목표는 git-prompt.sh
스크립트 를 사용하여 예쁜 색상과 모든 것이있는 git 저장소의 분기를 표시하는 것이지만 문제는 저장소를 변경할 때 분기 이름을 업데이트하지 않는다는 것입니다. 위의 간단한 예는 내 질문에 대해 생각해 볼 수있는 가장 간단한 재현입니다.
.bashrc
나는 자식 프롬프트 스크립트를 통합해야한다는 라인 :
source ~/.git-prompt.sh
PS1="\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]$(__git_ps1)\$ "
참고로 git prompt를 원한다면 github.com/magicmonty/bash-git-prompt/blob/master/README.md
—
mgor