Bash echo输出带颜色和背景的文本
Bash echo输出带颜色和背景的文本
1、先上效果图

2、bash代码
#!/bin/bash
#*************************************************************
#Author: yangruitao
#Date: 2020-11-04
#FileName: color.sh
#*************************************************************
black="0"
red="1"
green="2"
yellow="3"
blue="4"
magenta="5"
cyan="6"
white="7"
# Color 为文本和背景设置颜色
function Color() {
Content=""
Fg="3$1"
Bg="4$2"
SetColor="\e[$Fg;${Bg}m "
EndColor=" \e[0m"
for((i=3;i<=$#;i++)); do
j=${!i}
Content="${Content} $j "
done
echo -e ${SetColor}${Content}${EndColor}
}
# echo_black 输出黑色文本 可加背景颜色参数(背景默认不设置)
function echo_black() {
if [ "$1" == "-b" ]; then
Bg=$(($2))
Content=$3
else
Bg="8"
Content=$1
fi
Color $black $Bg $Content
}
# echo_red 输出红色文本 可加背景颜色参数(背景默认不设置)
function echo_red() {
if [ "$1" == "-b" ]; then
Bg=$(($2))
Content=$3
else
Bg="8"
Content=$1
fi
Color $red $Bg $Content
}
# echo_green 输出绿色文本 可加背景颜色参数(背景默认不设置)
function echo_green() {
if [ "$1" == "-b" ]; then
Bg=$(($2))
Content=$3
else
Bg="8"
Content=$1
fi
Color $green $Bg $Content
}
# echo_yellow 输出黄色文本 可加背景颜色参数(背景默认不设置)
function echo_yellow() {
if [ "$1" == "-b" ]; then
Bg=$(($2))
Content=$3
else
Bg="8"
Content=$1
fi
Color $yellow $Bg $Content
}
# echo_blue 输出蓝色文本 可加背景颜色参数(背景默认不设置)
function echo_blue() {
if [ "$1" == "-b" ]; then
Bg=$(($2))
Content=$3
else
Bg="8"
Content=$1
fi
Color $blue $Bg $Content
}
# echo_magenta 输出洋红色文本 可加背景颜色参数(背景默认不设置)
function echo_magenta() {
if [ "$1" == "-b" ]; then
Bg=$(($2))
Content=$3
else
Bg="8"
Content=$1
fi
Color $magenta $Bg $Content
}
# echo_cyan 输出青色文本 可加背景颜色参数(背景默认不设置)
function echo_cyan() {
if [ "$1" == "-b" ]; then
Bg=$(($2))
Content=$3
else
Bg="8"
Content=$1
fi
Color $cyan $Bg $Content
}
# echo_white 输出白色文本 可加背景颜色参数(背景默认不设置)
function echo_white() {
if [ "$1" == "-b" ]; then
Bg=$(($2))
Content=$3
else
Bg="8"
Content=$1
fi
Color $white $Bg $Content
}
#main
echo -e "example ... [\e[1;30m black \e[0m|\e[1;31m red \e[0m|\e[1;32m green \e[0m|\e[1;33m yellow \e[0m|\e[1;34m blue \e[0m|\e[1;35m magenta \e[0m|\e[1;36m cyan \e[0m|\e[1;37m white \e[0m]"
echo -en "using [\e[1;40m echo_black \"hello\"\e[0m ] to output black text: "
echo_black "hello"
echo -en "using [\e[1;41m echo_red \"hello\" \e[0m] to output red text: "
echo_red "hello"
echo -en "using [\e[1;42m echo_green \"hello\" \e[0m] to output green text: "
echo_green "hello"
echo -en "using [\e[1;43m echo_yellow \"hello\" \e[0m] to output yellow text: "
echo_yellow "hello"
echo -en "using [\e[1;44m echo_blue \"hello\" \e[0m] to output blue text: "
echo_blue "hello"
echo -en "using [\e[1;45m echo_magenta \"hello\" \e[0m] to output magenta text: "
echo_magenta "hello"
echo -en "using [\e[1;46m echo_cyan \"hello\" \e[0m] to output cyan text: "
echo_cyan "hello"
echo -en "using [\e[1;47m echo_white \"hello\" \e[0m] to output white text: "
echo_white "hello"
echo -en "using [\e[30;47m echo_black -b white \"hello,world!\" \e[0m] to output black text with white background: "
echo_black -b white "hello, world!"
3、其他脚本中使用示例
example.sh
#!/bin/bash
#导入color.sh脚本,即可调用里面的函数(若exmaple.sh与color.sh不在同一目录,下面的导入记得使用color.sh的绝对路径)
. color.sh
echo_red "red message"
echo_blue -b white "blue message, white background"

Bash echo输出带颜色和背景的文本的更多相关文章
- 让shell脚本中的echo输出带颜色
转载自:http://www.linuxidc.com/Linux/2014-12/110463.htm 让echo输出带颜色的方法有两种 1.在shell脚本中定义颜色变量,使用echo -e调用变 ...
- echo如何输出带颜色的文本
本文链接:https://blog.csdn.net/qualcent/article/details/7106483 ######################################## ...
- Bootstrap-全局样式的文本颜色和背景颜色
.text-五种颜色 文本颜色.text-info文本浅蓝颜色-提示.text-warning文本黄色-警告颜色.text-success文本绿色-成功颜色.text-primary文本深蓝色-警 ...
- 【MFC系列】MFC快速设置控件文本字体、大小、颜色、背景
以静态文本为例,分享一下怎么修改文本字体.大小.颜色.背景等参数.其他文本.控件等可参照修改. 1.修改字体.大小 这个很简单,首先在Dlg类中声明一个CFont类型的成员变量: 然后在类的初始化函数 ...
- echo -e "\033[字背景颜色;字体颜色m字符串\033[0m
格式: echo -e "\033[字背景颜色;字体颜色m字符串\033[0m" 例如: echo -e "\033[41;36m something here \033 ...
- (转)TextView 设置背景和文本颜色的问题
在做一个项目,突然遇到如下问题 比如:在color.xml中定义了几个颜色 <color name="white">#FFFFFF</color> < ...
- (转)shell脚本输出带颜色字体
shell脚本输出带颜色字体 原文:http://blog.csdn.net/andylauren/article/details/60873400 输出特效格式控制:\033[0m 关闭所有属性 ...
- Shell~echo -e 颜色输出
echo -e 可以控制字体颜色和背景颜色输出 从一个例子开始: # echo -e "\e[1;33;41m test content \e[0m" 输出效果: . \e 转义起 ...
- php 扫描url死链接 \033[31m ANSI Linux终端输出带颜色
* 从Packagist上搜索需要的包 https://packagist.org/ * 通过composer下载依赖包 composer require guzzlehttp/guzzlecompo ...
随机推荐
- Centos-显示目录或者目录下文件信息-ls
ls 显示指定目录信息或指定目录下文件和目录信息,后边不跟文件目录路径信息默认为当前工作目录 默认显示输出信息的总行数统计数 相关参数 -a 显示所有文件或子目录,包含隐藏文档 # linux中以 . ...
- 042 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 04 案例演示while循环的使用——循环输出英文字母
042 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 04 案例演示while循环的使用--循环输出英文字母 本文知识点:案例演示while循环的使用2 ...
- Arduino 与 SPI 结合使用 以及SPI 深层理解
本文主要讲解两部分内容,不做任何转发,仅个人学习记录: 一. Arduino 与 SPI 结合使用 : 二. SPI 深层理解 有价值的几个好的参考: 1. 中文版: https://blog.cs ...
- #ifdef _DEBUG #define new DEBUG_NEW #endif的解释
转载:https://blog.csdn.net/sinat_20265495/article/details/51762738 在用vc时,利用AppWizard会产生如下代码:#ifdef _DE ...
- JavaFX FileChooser文件选择器,缓存上一次打开的目录
例1:点击按钮Choose File打开文件选择器,并打开指定的目录.这是通过final void setInitialDirectory(final File value)方法实现的. 1 impo ...
- LR之Oracle 2tier协议录制Oracle脚本
在一次测试中,需用到sql去查询Oracle数据,并去使用改数据时,查阅各种资料终于实现LoadRunner对Oracle数据库进行操作,分享给大家,也与大家共同进步~ 同时也可用Loadrunn ...
- JDK1.8源码安装
JDK1.8源码安装 一.先卸载openjdk #查找已安装的版本,若是没有结果,就表示没安装rpm -qa|grep jdkrpm -qa|grep java#有的话卸载 --nodeps卸载相关依 ...
- JAVA基础 随机点名器案例
1.1 案例介绍 随机点名器,即在全班同学中随机的找出一名同学,打印这名同学的个人信息. 此案例在我们昨天课程学习中,已经介绍,现在我们要做的是对原有的案例进行升级,使用新的技术来实现. 我 ...
- 多测师讲解自动化测试 _RF定位iframe框_高级讲师肖sir
Open Browser https://mail.163.com/ gc Maximize Browser Window sleep 2 #进入if框 Comment Input Text name ...
- 多测师讲解python _unttest框架002(结合项目实战)_高级讲师肖sir
第一种调用方法: if __name__ == '__main__':# #第一种运行方法:运行所有的用例 import unittestfrom selenium import webdriverf ...