如何更改特定字符序列的bash输出颜色

时间:2015-06-26 18:07:34

标签: bash colors

我正在开展一个项目,在该项目中,我从终端启动一些服务器,并在不同事件发生时显示所有服务器日志(轮询消息,API调用等)。我正在测试一些新功能,需要在(快速)过程中观察这些日志,以确保一切按预期工作。我想知道是否可以对通过的某些消息进行颜色编码,这样我就可以更快地识别它们。

例如,我想确定特定API调用的位置。类似于" INFO:root:default:PUT /api/v0.1/something/something/mashedpotatoes"。是否有可能在碰巧发生时更改该消息的颜色?

1 个答案:

答案 0 :(得分:0)

您可以使用ANSI转义码来执行此操作。

Black        0;30     Dark Gray     1;30
Red          0;31     Light Red     1;31
Green        0;32     Light Green   1;32
Brown/Orange 0;33     Yellow        1;33
Blue         0;34     Light Blue    1;34
Purple       0;35     Light Purple  1;35
Cyan         0;36     Light Cyan    1;36
Light Gray   0;37     White         1;37

并使用它:

PURPLE='\033[0;35m'
NC='\033[0m' # No Color
echo "${PURPLE}INFO:root:default: PUT /api/v0.1/something/something/mashedpotatoes${NC}\n"

以紫色打印。