Benim içinde .bashrc
, ben çeşitli bit renklendirmek için ANSI terminali renk kodları kullanın. Bu gibi görünüyor:
PS1='\u@\h:\w\[\033[33m\]$(virtual_env)\[\033[32m\]$(git_branch)\[\033[0m\]$ '
stdout öğesinde çıktı veren bash işlevleri burada virtual_env
ve git_branch
.
Şimdi, okumayı ve değiştirmeyi kolaylaştırmak için, renk kodlarını değişkenlere kaydetmek ve doğrudan içine yerleştirmek yerine bunlara başvurmak istiyorum PS1
. Böylece bunun gibi bir sürü değişken var:
GREEN="\[\033[32m\]"
YELLOW="\[\033[33m\]"
RESET="\[\033[0m\]"
Gibi bir şey yazabilmek istiyorum:
PS1='\u@\h:\w${YELLOW}$(virtual_env)${GREEN}$(git_branch)${RESET}$ '
Fakat bu işe yaramıyor - renk kodları, çıktıkları gibi komut isteminde görünüyor. Bunun yerine çift tırnak kullanırsam renkler düzgün çalışır PS1
, ancak ardından istemi yalnızca yaptığımda değişir source ~/.bashrc
.
Kullanarak - Ben insanların yaptığı gördüğüm başka şeyler denedim printf
koyarak renkler için tek tırnak kullanarak, \[
ve \]
de PS1
yerine renkli değişkeni, ama hiçbir şey işe görünüyor.
Renk kodları için değişkenleri nasıl kullanabilirim?
.bashrc
?