当在
linux终端上编译一些项目时,通常会输出很多信息,包括很多信息.通常这个信息是MONOCHROME.我想知道bash是否可以被修改,所以在所有的输出或某些特定的输出(如Makefile等)中,我可以得到不同的颜色,例如:
make[1]: Leaving directory
要么
g++ -DHAVE_CONFIG_H -I.
等等
谢谢
当然,只要使用Bash函数,就像这样说:
make() { pathpat="(/[^/]*)+:[0-9]+" ccred=$(echo -e "\033[0;31m") ccyellow=$(echo -e "\033[0;33m") ccend=$(echo -e "\033[0m") /usr/bin/make "$@" 2>&1 | sed -E -e "/[Ee]rror[: ]/ s%$pathpat%$ccred&$ccend%g" -e "/[Ww]arning[: ]/ s%$pathpat%$ccyellow&$ccend%g" return ${PIPESTATUS[0]} }