zoukankan      html  css  js  c++  java
  • Linux echo 显示内容颜色

    • 格式

    echo 显示内容颜色,需要使用 -e 参数

    -e :打开反斜杠转义 (默认不打开) ,可以转义 “ , ” 等

    -n:在最后不自动换行

    str="kimbo zhang"
    echo -e "33[字背景颜色;文字颜色m ${str} 33[0m"

    注:文字颜色后面有个m 

    • 举例1,字体颜色
    #字体颜色:30m-37m 黑、红、绿、黄、蓝、紫、青、白
    str="kimbo zhang" echo -e "33[30m ${str}33[0m" ## 黑色字体 echo -e "33[31m ${str}33[0m" ## 红色 echo -e "33[32m ${str}33[0m" ## 绿色 echo -e "33[33m ${str}33[0m" ## 黄色 echo -e "33[34m ${str}33[0m" ## 蓝色 echo -e "33[35m ${str}33[0m" ## 紫色 echo -e "33[36m ${str}33[0m" ## 青色 echo -e "33[37m ${str}33[0m" ## 白色
    • 举例2,背景色+字体颜色
    #背景颜色:40-47 黑、红、绿、黄、蓝、紫、青、白
    str="kimbo zhang"
    echo -e "33[41;37m ${str} 33[0m"     ## 红色背景色,白色字体
    echo -e "33[41;33m ${str} 33[0m"     ## 红底黄字
    echo -e "33[1;41;33m ${str} 33[0m"   ## 红底黄字 高亮加粗显示
    echo -e "33[5;41;33m ${str} 33[0m"   ## 红底黄字 字体闪烁显示
    echo -e "33[47;30m ${str} 33[0m"     ## 白底黑字
    echo -e "33[40;37m ${str} 33[0m"     ## 黑底白字
    • 其他参数说明

      33[1;m 设置高亮加粗
      33[4;m 下划线
      33[5;m 闪烁

    #定义函数,用于日志写入等

    #!/bin/bash
    ## 写日志
    ## 参数1:字符串
    ## 参数2:颜色 (红色:失败报错,绿色:成功,黄色:警告)
    
    function func_write_log()
    {
        var_str=$1
        var_color=$2
        var_curr_timestamp=`date "+%Y-%m-%d %H:%M:%S"`
    
        ## 判断参数1 是否是空字符串
        if [ "x${var_str}" == "x" ];then
            var_str=""
        else
            var_str="${var_curr_timestamp} ${var_str}"
        fi
    
        ## 判断颜色
        if [ "${var_color}" == "green" ];then
            var_str="
    33[32m${var_str}33[0m"
        elif [ "${var_color}" == "yellow" ];then
            var_str="33[33m${var_str}33[0m"
        elif [ "${var_color}" == "red" ];then
            var_str="33[1;41;33m${var_str}33[0m"
        else
            var_str="33[37m${var_str}33[0m"
        fi
    
        ## 打印输出
        echo -e "${var_str}"
        #echo -e "${var_str}" >> ${var_path}/test_${var_curr_timestamp}.log 2>&1  #写入日志文件
    }
    
    ## 函数调用
    func_write_log "kimbo" "red"

    结果:

  • 相关阅读:
    ASP.NET MVC中权限控制的简单实现
    HDU1004——Let the Balloon Rise
    如何使用飞秋FeiQ实现两电脑通信(或传输文件)
    vb.net 鼠标控制
    ireport制作报表pageheader只在第一页出现的解决办法
    Keycode对照表
    leetcode第一刷_Binary Tree Zigzag Level Order Traversal
    换硬币问题
    STM32 寄存器库和固件库
    java网络编程(2)InetAddress 类及udp协议
  • 原文地址:https://www.cnblogs.com/kimbo/p/6816566.html
Copyright © 2011-2022 走看看