![\e[38;5;175m 和 \[\e[38;5;175m\] 與 bash 顏色有何不同?](https://rvso.com/image/1492060/%5Ce%5B38%3B5%3B175m%20%E5%92%8C%20%5C%5B%5Ce%5B38%3B5%3B175m%5C%5D%20%E8%88%87%20bash%20%E9%A1%8F%E8%89%B2%E6%9C%89%E4%BD%95%E4%B8%8D%E5%90%8C%EF%BC%9F.png)
我一直在嘗試學習如何自訂我的 shell,並且遇到了在 Bash shell 中指定顏色的兩種不同方法。他們似乎都實現了相同的目標,我不確定有什麼區別(如果有的話)。周圍的[和]有什麼作用?
例子:
# colors!
red="\e[38;5;196m"
lightMagenta="\[\e[38;5;175m\]"
reset="\[\033[0m\]"
# Change command prompt
source ~/git-prompt.sh
export GIT_PS1_SHOWDIRTYSTATE=1
export PS1="$lightMagenta\u@\h$green\$(__git_ps1)$red \W $ $reset"
任何見解將不勝感激。
謝謝你!
答案1
我找到了一個關於Bash 提示符號定制說的是:
\[
\]
Bash 手冊頁建議將[終端轉義序列] 括起來。這有助於 Bash 忽略不可列印的字符,以便正確計算提示符的大小。