Shell
我可以配置我的 .bashrc 以突出顯示我在 Prod 目錄中的事實嗎?
目前,我正在使用以下內容:
export CLICOLOR=1 export PROMPT_DIRTRIM=6 PS1='${debian_chroot:+($debian_chroot)}\[\e[0;31m\]\u\[\e[m\]@\ [\033[01;32m\]\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ' export LSCOLORS=gxBxhxDxfxhxhxhxhxcxcx
我幾乎不知道這實際上是如何工作的!它確實修剪了我的目錄以使其更具可讀性,並添加了一些顏色。
有沒有辦法可以在這裡修改我的選項,以明確我在生產目錄中?我在想,如果我的目前
pwd
包含prod
orproduction
,那麼我的提示會急劇改變顏色(比如令人討厭的鮮紅色,或其他一些明顯的變化)。
使用該
PROMPT_COMMAND
設置,它允許您在列印提示之前執行任意程式碼。(假設 bash。)作為概念證明:PROMPT_COMMAND='case "$PWD" in *prod*) printf "\033[31m%s/\033[0m > " ${PWD##*/} ;; *) printf "%s/ > " ${PWD##*/};; esac'
如果變數在任何地方包含“prod”,它使用 xterm 轉義碼將前景色設置為紅色
PWD
,但僅在提示中顯示最頂層的目錄名稱。此處的高級顏色程式碼討論:https ://superuser.com/questions/270214/how-can-i-change-the-colors-of-my-xterm-using-ansi-escape-sequences