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输出带颜色和背景的文本的更多相关文章

  1. 让shell脚本中的echo输出带颜色

    转载自:http://www.linuxidc.com/Linux/2014-12/110463.htm 让echo输出带颜色的方法有两种 1.在shell脚本中定义颜色变量,使用echo -e调用变 ...

  2. echo如何输出带颜色的文本

    本文链接:https://blog.csdn.net/qualcent/article/details/7106483 ######################################## ...

  3. Bootstrap-全局样式的文本颜色和背景颜色

    .text-五种颜色   文本颜色.text-info文本浅蓝颜色-提示.text-warning文本黄色-警告颜色.text-success文本绿色-成功颜色.text-primary文本深蓝色-警 ...

  4. 【MFC系列】MFC快速设置控件文本字体、大小、颜色、背景

    以静态文本为例,分享一下怎么修改文本字体.大小.颜色.背景等参数.其他文本.控件等可参照修改. 1.修改字体.大小 这个很简单,首先在Dlg类中声明一个CFont类型的成员变量: 然后在类的初始化函数 ...

  5. echo -e "\033[字背景颜色;字体颜色m字符串\033[0m

    格式: echo -e "\033[字背景颜色;字体颜色m字符串\033[0m" 例如: echo -e "\033[41;36m something here \033 ...

  6. (转)TextView 设置背景和文本颜色的问题

    在做一个项目,突然遇到如下问题 比如:在color.xml中定义了几个颜色 <color name="white">#FFFFFF</color> < ...

  7. (转)shell脚本输出带颜色字体

    shell脚本输出带颜色字体 原文:http://blog.csdn.net/andylauren/article/details/60873400 输出特效格式控制:\033[0m  关闭所有属性  ...

  8. Shell~echo -e 颜色输出

    echo -e 可以控制字体颜色和背景颜色输出 从一个例子开始: # echo -e "\e[1;33;41m test content \e[0m" 输出效果: . \e 转义起 ...

  9. php 扫描url死链接 \033[31m ANSI Linux终端输出带颜色

    * 从Packagist上搜索需要的包 https://packagist.org/ * 通过composer下载依赖包 composer require guzzlehttp/guzzlecompo ...

随机推荐

  1. Centos-强制将内存中数据写入磁盘-sync

    sync 强制将内存中数据写入磁盘,以免数据丢失.在linux系统中,修改过的操作并不会立即写入磁盘,而是先写到内存中,通过buffer队列当达到指定时间或者指定大小再一次性写入磁盘,提高IO效率,正 ...

  2. 为 MaixPy 加入软 I2C 接口(移植 MicroPython 的 I2C)

    起因 本文的重心为讲解如何为一款芯片移植和实现 micropython 的通用组件,但会顺带解释不同芯片的工作方式和特性. 国际惯例,先有起因,再谈问题的解决,所以记得上次总结的 关于 K210 Ma ...

  3. 使用精灵代理ip最节约成本的策略!

    使用ip代理业务用例 1.使用精灵代理(http://www.jinglingdaili.com/Shop-index.html),通过Api获取,每次返回一个固定时间(五分钟)的IP,然后将获取到的 ...

  4. C 多态 RT-Thread

    // RT-Thread对象模型采用结构封装中使用指针的形式达到面向对象中多态的效果,例如: // 抽象父类 #include <stdio.h> #include <assert. ...

  5. 使用 PL/SQL Developer 导入 .sql 文件

    操作系统:Windows 10 x64 PL/SQL Developer Version 12.0.7.1837 (64 bit) 01.226959 第一节:下载 Oracle Database X ...

  6. SQL审核平台Yearning部署

    SQL审核平台Yearning部署  Yearning优势: Yearning SQL 审计平台 基于Vue.js与Django的整套mysql-sql审核平台解决方案.提供基于Inception的S ...

  7. 启动VNC Shell扩展

    下载source files - 18.3 Kb Introduction 我们使用RealVNC来远程控制我们的网络中的pc机,VNC是一个伟大的产品,但如果不记住计算机名称,它可以是乏味的,在网络 ...

  8. ubuntu20 使用命令安装 nginx

    安装 nginx sudo apt-get install nginx -y 配置文件 nginx 服务管理 # 启动 nginx 服务 service nginx start # 关闭 nginx ...

  9. Python数据类型--字典(dict)

    Python中的字典是键值对(key-value)的无序集合.每个元素包含"键"和"值"两部分,这两部分之间使用冒号分隔,表示一种对应关系.不同元素之间用逗号分 ...

  10. 编程体系结构(08):Spring.Mvc.Boot框架

    本文源码:GitHub·点这里 || GitEE·点这里 一.Spring框架 1.框架概述 Spring是一个开源框架,框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为 ...