美文网首页
bash脚本输出带颜色的字符串

bash脚本输出带颜色的字符串

作者: itsenlin | 来源:发表于2022-02-11 10:00 被阅读0次

在linux下工作学习时,使用最多的就是bash脚本,很多时候要输出一些信息,为了更容易处理输出的信息,可以在输出时显示成不同的颜色
linux下的echo命令提供了一个简单好用的方法来实现

实例

先来一个例子直观的感受一下


image.png

echo

在linux下,通过man命令可以查看echo命令的帮助信息,如下

ECHO(1)                                                                                       User Commands                                                                                      ECHO(1)

NAME
       echo - display a line of text

SYNOPSIS
       echo [SHORT-OPTION]... [STRING]...
       echo LONG-OPTION

DESCRIPTION
       Echo the STRING(s) to standard output.

       -n     do not output the trailing newline

       -e     enable interpretation of backslash escapes

       -E     disable interpretation of backslash escapes (default)

       --help display this help and exit

       --version
              output version information and exit

       If -e is in effect, the following sequences are recognized:

       \\     backslash

       \a     alert (BEL)

       \b     backspace

       \c     produce no further output

       \e     escape

       \f     form feed

       \n     new line

       \r     carriage return

       \t     horizontal tab

       \v     vertical tab

       \0NNN  byte with octal value NNN (1 to 3 digits)

       \xHH   byte with hexadecimal value HH (1 to 2 digits)

       NOTE: your shell may have its own version of echo, which usually supersedes the version described here.  Please refer to your shell's documentation for details about the options it supports.

这里要使用-e选项,即“使能对反斜杠转义的解析”,我们在使用echo命令输出信息时,就是通过特殊的转义字符来实现的字符串带颜色

转义说明

实例中看到echo输出的字符串中的开头和结尾都出现了一些特殊符号,这些就是特殊的转义字符,
用于在字符显示系统中控制光标移动和字符色彩的特殊转义控制也称为ANSI控制码,以ESC[开头,后面跟不同的控制码,而ESC要使用\033或者\e来实现

显示字符属性控制码

控制码 说明
[n1;n2;......m 设定显示字符的属性状态。若有两个以上设定则以分号将代码(n1;n2;..)隔开除非重新设定,否则原设定之属性一直被保留。

其中n1; n2等代码分为两种

表示颜色的代码

字体颜色代码 字符背景颜色代码 颜色
30 40 黑色
31 41 红色
32 42 绿色
33 43 黄色
34 44 蓝色
35 45 紫红色
36 46 青蓝色
37 47 白色

上面实例中使用的\e[31m就是表示后面字符串显示为红色

特殊代码

代码 含义
0 所有属性 OFF,即返回正常显示模式 (Normal)
1 高亮度显示 (Bright)
4 加下划线 (Underline)
5 闪烁显示 (Flash)
7 反相显示 (Inverse)
8 不可见 (Invisable)

上面实例中使用的\e[0m就是表示关闭控制,返回正常显示模式,如果不关闭的话,后面所有显示都会以前面设置的控制显示,如下

image.png

增加下划线实例如下


image.png

还有一些其他的一些ANSI控制码,当前已经可以满足大部分需求,有需要的时候再补充

相关文章

  • bash脚本输出带颜色的字符串

    在linux下工作学习时,使用最多的就是bash脚本,很多时候要输出一些信息,为了更容易处理输出的信息,可以在输出...

  • Shell echo 带颜色输出

    Shell echo 带颜色输出 shell脚本中 echo 显示内容带颜色显示格式如下: 字体颜色范围 30-3...

  • 第1节 shell脚本创建执行和输出

    #shell脚本创建执行和输出 1.shell脚本开头 #!/bin/bash /bin/bash 是Ba...

  • Linux下命令使用及Shell编程

    1.shell脚本输出输出带颜色内容 2.shell脚本接收键盘输入 3.shell脚本判断前一个命令是否执行成功...

  • python使用技巧

    1 使用colorama库带颜色输出日志 2 pwn awd模板 awd模式千万不要使得单个脚本功能太过庞大,脚本...

  • 输出带颜色字体

    echo 通常用于 shell 脚本中以显示消息或输出其他命令的结果。 显示带颜色的输出内容,需要使用参数 -e ...

  • shell 输出带颜色内容

    原文地址 echo 通常用于 shell 脚本中以显示消息或输出其他命令的结果。 显示带颜色的输出内容,需要使用参...

  • jenkins调用shell脚本 输出带颜色字体

    jenkins需要安装AnsiColor插件在构建环境项选择“color ansi console output”

  • Linux脚本收录

    脚本合集 通过键盘给定两个数字 ,输出其中较大的值 !/bin/bash if [ $1 -gt $2 ];the...

  • Shell学习

    执行脚本 输出语句 变量 字符串 提取子串 数组

网友评论

      本文标题:bash脚本输出带颜色的字符串

      本文链接:https://www.haomeiwen.com/subject/oprakrtx.html