Saya mencoba untuk memiliki bagian dari prompt saya diatur secara dinamis oleh suatu fungsi, jadi di saya .bashrcpunya:
asdf ()
{
echo -n $(pwd)
}
PS1="\u@\h:\w $(asdf)\$ "
Membuka shell memberi saya apa yang saya harapkan pada awalnya:
$ bash
darthbith@server:~/test /home/darthbith/test$
Namun, ketika saya mengubah direktori, bagian yang didefinisikan oleh fungsi tidak berubah:
darthbith@server:~/test /home/darthbith/test$ cd ~/test2
darthbith@server:~/test2 /home/darthbith/test$
Tujuan sebenarnya saya adalah menggunakan git-prompt.shskrip untuk menunjukkan cabang repositori git saya ketika saya berada di satu dengan warna-warna cantik dan segalanya, tetapi masalahnya adalah ia tidak pernah memperbarui nama cabang ketika saya mengubah repositori. Contoh sepele di atas adalah reproduksi paling sederhana yang bisa saya ajukan untuk pertanyaan saya.
.bashrcBaris - baris yang saya harus mengintegrasikan skrip git-prompt:
source ~/.git-prompt.sh
PS1="\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]$(__git_ps1)\$ "