Linux echo 顯示內容顏色

  • 格式

echo 顯示內容顏色,須要使用 -e 參數bash

-e :打開反斜槓轉義 (默認不打開) ,能夠轉義 「\n, \t」 等函數

-n:在最後不自動換行字體

 

str="kimbo zhang"
echo -e "\033[字背景顏色;文字顏色m ${str} \033[0m"spa

注:文字顏色後面有個m 日誌

 

  • 舉例1,字體顏色
#字體顏色:30m-37m 黑、紅、綠、黃、藍、紫、青、白
str="kimbo zhang" echo -e "\033[30m ${str}\033[0m" ## 黑色字體 echo -e "\033[31m ${str}\033[0m" ## 紅色 echo -e "\033[32m ${str}\033[0m" ## 綠色 echo -e "\033[33m ${str}\033[0m" ## 黃色 echo -e "\033[34m ${str}\033[0m" ## 藍色 echo -e "\033[35m ${str}\033[0m" ## 紫色 echo -e "\033[36m ${str}\033[0m" ## 青色 echo -e "\033[37m ${str}\033[0m" ## 白色
  • 舉例2,背景色+字體顏色
#背景顏色:40-47 黑、紅、綠、黃、藍、紫、青、白
str="kimbo zhang"
echo -e "\033[41;37m ${str} \033[0m"     ## 紅色背景色,白色字體
echo -e "\033[41;33m ${str} \033[0m"     ## 紅底黃字
echo -e "\033[1;41;33m ${str} \033[0m"   ## 紅底黃字 高亮加粗顯示
echo -e "\033[5;41;33m ${str} \033[0m"   ## 紅底黃字 字體閃爍顯示
echo -e "\033[47;30m ${str} \033[0m"     ## 白底黑字
echo -e "\033[40;37m ${str} \033[0m"     ## 黑底白字
  • 其餘參數說明

  \033[1;m 設置高亮加粗
  \033[4;m 下劃線
  \033[5;m 閃爍code

 

#定義函數,用於日誌寫入等blog

#!/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="\n\033[32m${var_str}\033[0m"
    elif [ "${var_color}" == "yellow" ];then
        var_str="\033[33m${var_str}\033[0m"
    elif [ "${var_color}" == "red" ];then
        var_str="\033[1;41;33m${var_str}\033[0m"
    else
        var_str="\033[37m${var_str}\033[0m"
    fi

    ## 打印輸出
    echo -e "${var_str}"
    #echo -e "${var_str}" >> ${var_path}/test_${var_curr_timestamp}.log 2>&1  #寫入日誌文件
}

## 函數調用
func_write_log "kimbo" "red"

結果:字符串

相關文章
相關標籤/搜索