簡體   English   中英

如何在bash中檢查當前路徑?

[英]How can I check for the current path in bash?

我在工作

在多個項目中:A,B,C,D,E和F.我通過終端進行所有項目,並通過終端標簽交換它們。

有時,我在項目之間混淆,因為它們具有相同的文本顏色,在這種情況下是黃色。

在此輸入圖像描述


我正在努力

實現這樣的目標:

在此輸入圖像描述

我想在項目的當前路徑上分配不同的顏色基礎。

如何檢查bash中的當前路徑?


.bash_profile中

#================================
#            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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM