1
要打印彩色的话,我可以在外壳做到这一点:如何为特殊的彩色回声创建函数?
declare -A COLORS
COLORS["red"]='\033[0;31m'
COLORS["default"]='\033[0m'
echo -e "${COLORS["red"]}abc${COLORS["default"]}" # With color
echo -e "xyz" # No color.
echo -e "${COLORS["red"]}lmn${COLORS["default"]}" # With color
但复制粘贴+的线条与颜色是很难当需要颜色的调试消息到处都是维护。
我试图把它放在一个功能,例如:
function RedPrint() {
echo -e "${COLORS["red"]}$1${COLORS["default"]}" >&2
}
的好处是RedPrint允许全局变量:
G="hahaha"
RedPrint "abc $G foo bar"
RedText "blah blah "${G}" foo foo bar"
但我敢肯定有一些注意事项我没有遇到过。功能化RedPrint
的行为与我将如何使用echo -e
相同?
(份)的问题是:
- 是否有操纵外壳颜色更简单的方法?有替代品吗?
- 功能是否与
echo
保持彩色打印的好方法?RedPrint
怎么写?