bash中的echo-ing彩色文本曾经对所有其他echo';s

bash中的echo-ing彩色文本曾经对所有其他echo';s,bash,colors,Bash,Colors,我希望bash脚本中的一个输出行的颜色不同,因此我使用了以下命令: echo -e "\e[38;5;11m Test" 这将以黄色文本打印出Test。之后,我运行以下命令: echo "No changes made... exiting" 这里没有指定颜色,但它仍然以黄色打印出来 使用echo一次性设置输出文本的颜色时,是否为所有其他echo设置全局文本颜色?如果是,这是否意味着每次要输出文本时都必须指定文本颜色以覆盖它?正如您所猜测的,每当您在控制台中设置颜色时,它都会一直保持,直到更

我希望bash脚本中的一个输出行的颜色不同,因此我使用了以下命令:

echo -e "\e[38;5;11m Test"
这将以黄色文本打印出
Test
。之后,我运行以下命令:

echo "No changes made... exiting"
这里没有指定颜色,但它仍然以黄色打印出来


使用
echo
一次性设置输出文本的颜色时,是否为所有其他
echo
设置全局文本颜色?如果是,这是否意味着每次要输出文本时都必须指定文本颜色以覆盖它?

正如您所猜测的,每当您在控制台中设置颜色时,它都会一直保持,直到更改或重置为止。您可以使用以下代码重置为正常文本颜色:

\e[m
换言之:

# appears yellow
echo -e "\e[38;5;11m Test\e[m"

# appears normal
echo "No changes made... exiting"

正如您所猜测的,无论何时在控制台中设置颜色,它都会一直保持,直到更改或重置为止。您可以使用以下代码重置为正常文本颜色:

\e[m
换言之:

# appears yellow
echo -e "\e[38;5;11m Test\e[m"

# appears normal
echo "No changes made... exiting"