Saya mencoba untuk memiliki bagian dari prompt saya diatur secara dinamis oleh suatu fungsi, jadi di saya .bashrc
punya:
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.sh
skrip 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.
.bashrc
Baris - 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)\$ "