如何在shell脚本中使用echo显示内容带颜色

1、你的shell脚本可以更美丽——让echo显示带颜色的内容你的shell脚本可以更美丽——让echo显示带颜色的内容作为一名程序员。

你的shell脚本可以更美丽——让echo显示带颜色的内容

作为一名程序员,我们经常需要在终端上运行各种各样的命令和脚本。但是,如果每次输出都是黑白灰调的,那就太无聊了!所以,在这篇文章中,我将向大家介绍如何使用echo命令来使输出更加生动有趣。

首先,让我们来看一下默认情况下echo输出的文字:

“`

$ echo “hello world”

hello world

很无聊对不对?那么现在我们要做的就是给这些文字添加一点颜色。

添加前景色

要添加前景色(即文字颜色),我们可以使用ANSI转义码。ANSI转义码以`33[`开头,并以字母`m`结尾。后面跟着数字表示所需颜色。

例如:

– `33[31m`表示红色

– `33[32m`表示绿色

– `33[33m`表示黄色

– `33[34m`表示蓝色

– `33[35m`表示紫红色

接下来就是一个例子:

$ echo -e “33[31mHello World33[m”

你会发现输出结果是红字!

添加背景色

要添加背景色,我们可以在前景色的基础上加上一个分号和另一个数字,表示所需背景颜色。

– `33[31;41m`表示红底黑字

– `33[32;42m`表示绿底黑字

– `33[33;43m`表示黄底黑字

– `33[34;44m`表示蓝底黑字

– `33[35;45m`表示紫红底黑字

$ echo -e “33[31;43mHello World33[m”

你会发现输出结果是黄底红字!

将颜色封装成函数

如果我们经常需要使用一些特定的颜色组合,每次都输入这么长的命令实在是太麻烦了。那么有没有更方便的方法呢?当然有!我们可以把这些命令封装成函数。

“`shell

如何在shell脚本中使用echo显示内容带颜色

function red_echo() {

echo -e “33[31m$*33[m”

}

function green_echo() {

echo -e “33[32m$*33[m”

function yellow_echo() {

echo -e “33[33m$*33[m”

然后你就可以愉快地使用了:

$ red_echo “This is a red message!”

This is a red message!

$ green_echo “This is a green message!”

This is a green message!

$ yellow_echo “This is a yellow message!”

This is a yellow message!

结语

现在,你已经学会了如何使用echo命令来使输出更加生动有趣。希望这篇文章能够对你有所帮助!

最后,附上本文中使用到的所有ANSI转义码:

– `33[0m` 关闭所有属性

– `33[1m` 设置高亮度

– `33[2m` 设置低亮度

– `33[4m` 下划线

– `33[5m` 闪烁

– `33[7m` 反显

– `33[8m` 消隐(即隐藏)

– `33[nA` 光标上移n行(n为数字)

– `33[nB `光标下移n行(n为数字)

– `33[nC `光标右移n个字符(n为数字)

– `33[nD` 光标左移n个字符(n为数字)

最多5个TAGS:shell脚本、echo、颜色、ANSI转义码