[英]How can I check for the current path in bash?
在多個項目中:A,B,C,D,E和F.我通過終端進行所有項目,並通過終端標簽交換它們。
有時,我在項目之間混淆,因為它們具有相同的文本顏色,在這種情況下是黃色。
實現這樣的目標:
我想在項目的當前路徑上分配不同的顏色基礎。
如何檢查bash中的當前路徑?
#================================
# Colors =
#================================
black="\[\033[0;30m\]"
blue="\[\033[1;37m\]"
green="\[\033[0;32m\]"
cyan="\[\033[0;36m\]"
red="\[\033[0;31m\]"
purple="\[\033[0;35m\]"
brown="\[\033[0;33m\]"
lightgray="\[\033[0;37m\]"
darkgray="\[\033[1;30m\]"
lightblue="\[\033[1;34m\]"
lightgreen="\[\033[1;32m\]"
lightcyan="\[\033[1;36m\]"
lightred="\[\033[1;31m\]"
lightpurple="\[\033[1;35m\]"
yellow="\[\033[1;33m\]"
white="\[\033[1;37m\]"
nc="\[\033[0m\]"
if [ "\w" == "~/dev/projects/biv2" ]; then
export PS1="──$white[$blue\w$white] \n└── $white"
fi
// Default Color
export PS1="──$white[$yellow\w$white] \n└── $white"
在顯示提示之前,您必須使用PROMPT_COMMAND
來檢查當前目錄是什么,並相應地設置PS1
的值。
prompt_cmd () {
case $PWD in
~/dev/projects/biv2) dircolor=$yellow ;;
~/dev/projects/other) dircolor=$blue ;;
# and so on. For any other directory,
*) dircolor=$green
esac
PS1="──$white[$dircolor\w$white] \n└── $white"
}
PROMPT_COMMAND=prompt_cmd
沒有PROMPT_COMMAND
,你可以做類似的事情
set_dir_color () {
case $PWD in
~/dev/projects/biv2) dircolor=$yellow ;;
~/dev/projects/other) dircolor=$blue ;;
# and so on. For any other directory,
*) dircolor=$green
esac
echo "$dircolor"
}
PS1="──$white[\$(set_dir_color)\w$white] \n└── $white"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.