我试图记住如何预定义.bashrc
文件内部的颜色,以便在执行操作时可以调用它们${RED}
。
我不记得这是否是正确的做法,但如果我能记得的话,它是这样的;
NC="\033[0;0;0m" # no color or formatting
RED="\033[1;49;91m" # color red
BLU="\033[1;49;94m" # color blue
GRN="\033[1;49;32m" # color green
我记得还有另一个,就是使用function
它可以随时随地使用。我确实有一个文件告诉我如何做到这一点,但我丢失了这个文件,它显示了如何做到这一点,我记不清它是怎么进行的了。
答案1
~/.bashrc
您可以按如下方式定义一个函数
showred(){
export RED='\033[1;49;91m'
export NC='\033[0;0;0m'
echo -e $RED"$@"$NC
}
~/.bashrc
以源文件. ~/.bashrc
或打开一个新终端并尝试。
您还可以在终端上书写时使用颜色进行书写,echo
如下printf
所示,
答案2
declare -r RED='\033[0;31m'
declare -r GREEN='\033[0;32m'
declare -r NC='\033[0m'
答案3
你可能已经看到了$'...'
语法,它使 shell 解释反斜杠序列:
NC=$'\e[0m' # no color or formatting
RED=$'\e[1;31m' # color red
GRN=$'\e[1;32m' # color green
BLU=$'\e[1;34m' # color blue
另一种方法是使用输出:
NC=$(tput sgr0) # no color or formatting
RED=$(tput bold; tput setaf 1) # color red
GRN=$(tput bold; tput setaf 2) # color green
BLU=$(tput bold; tput setaf 4) # color blue
您可以将它们与 souravc 的答案中的包装函数结合起来;您不需要-e
。