Linux如何更改echo的輸出顏色
在計算機編程世界中,顏色不僅僅是一種視覺效果,它也是一種信息傳遞的工具。特別是在Linux的命令行界面,顏色的使用可以極大地提升我們的工作效率。
今天,我們就來深入探討一下在Linux中如何更改 echo 命令的輸出顏色,讓代碼更加生動、易讀。
一、快速入門
在shell腳本中定義顏色變量,使用 echo -e 調(diào)用變量。定義變量的時候,把echo -e定義到變量中,然后輸出變量。
格式及選項如下所示:
\033[顯示方式;前景色;背景色m
| 說明 | |
|---|---|
| 顯示方式 | 0(默認值)、1(高亮)、22(非粗體)、4(下劃線)、24(非下劃線)、5(閃爍)、25(非閃爍)、7(反顯)、27(非反顯) |
| 前景色 | 30(黑色)、31(紅色)、32(綠色)、 33(黃色)、34(藍色)、35(洋紅)、36(青色)、37(白色) |
| 背景色 | 40(黑色)、41(紅色)、42(綠色)、 43(黃色)、44(藍色)、45(洋紅)、46(青色)、47(白色) |
示例如下圖所示:
echo -e "\033[1;31;42mHelloWorld\033[0m"

字顏色:30—–37
echo -e "\033[30m 黑色字 \033[0m" echo -e "\033[31m 紅色字 \033[0m" echo -e "\033[32m 綠色字 \033[0m" echo -e "\033[33m 黃色字 \033[0m" echo -e "\033[34m 藍色字 \033[0m" echo -e "\033[35m 紫色字 \033[0m" echo -e "\033[36m 天藍字 \033[0m" echo -e "\033[37m 白色字 \033[0m"
字背景顏色范圍:40—–47
echo -e "\033[40;37m 黑底白字 \033[0m" echo -e "\033[41;37m 紅底白字 \033[0m" echo -e "\033[42;37m 綠底白字 \033[0m" echo -e "\033[43;37m 黃底白字 \033[0m" echo -e "\033[44;37m 藍底白字 \033[0m" echo -e "\033[45;37m 紫底白字 \033[0m" echo -e "\033[46;37m 天藍底白字 \033[0m" echo -e "\033[47;30m 白底黑字 \033[0m"
其他內(nèi)容
# 關(guān)閉所有屬性 echo -e "\33[0m" # 設(shè)置高亮度 echo -e "\33[1m" # 下劃線 echo -e "\33[4m" # 閃爍 echo -e "\33[5m" # 反顯 echo -e "\33[7m" # 消隱 echo -e "\33[8m"
二、基本使用
2.1 對于常規(guī)的輸出
# Reset
Color_Off='\033[0m' # Text Reset
# Regular Colors
Black='\033[0;30m' # Black
Red='\033[0;31m' # Red
Green='\033[0;32m' # Green
Yellow='\033[0;33m' # Yellow
Blue='\033[0;34m' # Blue
Magenta='\033[0;35m' # Magenta
Cyan='\033[0;36m' # Cyan
White='\033[0;37m' # White
echo -e "${Red}I like Linux${Color_Off} normal."
0; 是默認值,可以忽略。
測試字體顏色
echo -e "e[1;30m linux e[0m" ## 30 黑色 echo -e "e[1;31m linux e[0m" ## 31 紅色 echo -e "e[1;32m linux e[0m" ## 32 綠色 echo -e "e[1;33m linux e[0m" ## 33 黃色 echo -e "e[1;34m linux e[0m" ## 34 藍色 echo -e "e[1;35m linux e[0m" ## 35 紫色 echo -e "e[1;36m linux e[0m" ## 36 天藍色 echo -e "e[1;37m linux e[0m" ## 37 白色

測試背景色并高亮顯示
echo -e "e[1;41m Red Bcakground e[0m" ## 41 紅色 echo -e "e[1;40m Red Bcakground e[0m" ## 40 黑色 echo -e "e[1;0m Red Bcakground e[0m" ## 0 重置 echo -e "e[1;42m Red Bcakground e[0m" ## 42 綠色 echo -e "e[1;43m Red Bcakground e[0m" ## 43 黃色 echo -e "e[1;44m Red Bcakground e[0m" ## 44 藍色 echo -e "e[1;45m Red Bcakground e[0m" ## 45 紫色 echo -e "e[1;46m Red Bcakground e[0m" ## 46 天藍色 echo -e "e[1;47m Red Bcakground e[0m" ## 47 白色 echo -e "e[5;47m Red Bcakground e[0m" ## 5 表示閃爍

2.2 對于字體加粗的輸出
Color_Off='\033[0m' # Text Reset
# Bold
BBlack='\033[1;30m' # Black
BRed='\033[1;31m' # Red
BGreen='\033[1;32m' # Green
BYellow='\033[1;33m' # Yellow
BBlue='\033[1;34m' # Blue
BMagenta='\033[1;35m' # Magenta
BCyan='\033[1;36m' # Cyan
BWhite='\033[1;37m' # White
echo -e "${BGreen}I like Linux${Color_Off} bold."
2.3 對于字體斜體的輸出
Color_Off='\033[0m' # Text Reset
# Italic
IBlack='\033[3;30m' # Black
IRed='\033[3;31m' # Red
IGreen='\033[3;32m' # Green
IYellow='\033[3;33m' # Yellow
IBlue='\033[3;34m' # Blue
IMagenta='\033[3;35m' # Magenta
ICyan='\033[3;36m' # Cyan
IWhite='\033[3;37m' # White
echo -e "${IYellow}I like Linux${Color_Off} italic."
2.4 對于帶下劃線的輸出
Color_Off='\033[0m' # Text Reset
# Underline
UBlack='\033[4;30m' # Black
URed='\033[4;31m' # Red
UGreen='\033[4;32m' # Green
UYellow='\033[4;33m' # Yellow
UBlue='\033[4;34m' # Blue
UMagenta='\033[4;35m' # Magenta
UCyan='\033[4;36m' # Cyan
UWhite='\033[4;37m' # White
echo -e "${UBlue}I like Linux${Color_Off} underline."
2.5 對于閃爍效果的輸出
Color_Off='\033[0m' # Text Reset
# Slow blink
SbBlack='\033[5;30m' # Black
SbRed='\033[5;31m' # Red
SbGreen='\033[5;32m' # Green
SbYellow='\033[5;33m' # Yellow
SbBlue='\033[5;34m' # Blue
SbMagenta='\033[5;35m' # Magenta
SbCyan='\033[5;36m' # Cyan
SbWhite='\033[5;37m' # White
echo -e "${SbMagenta}I like Linux${Color_Off} slow blink."
三、總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
CentOS6.7系統(tǒng)中配置LNMP環(huán)境
LNMP 代表的就是:Linux系統(tǒng)下Nginx+MySQL+PHP這種網(wǎng)站服務(wù)器架構(gòu)。LNMP 這種架構(gòu)目前也是非常流行,今天我們就來看下如何在CentOS6.7系統(tǒng)中配置LNMP環(huán)境2016-10-10
apache服務(wù)器一個ip(如:127.0.0.1)和多個域名(虛擬主機)的綁定
今天在學(xué)習(xí)PHP時,用的是apache服務(wù)器有這樣的一個需求:一個ip(如:127.0.0.1)和多個域名(虛擬主機)綁定,以下是我的解決方案,需要的朋友可以參考下2015-01-01
Linux下PhpMyAdmin程序目錄結(jié)構(gòu)的安全管理
Linux下開發(fā)Web程序,現(xiàn)在很流行的開發(fā)方法為:用PHP開發(fā)Web程序,用Apache做Web Server,Mysql充當后臺管理數(shù)據(jù)庫。2011-04-04
Linux?服務(wù)器上配置基于SSH?密鑰的身份驗證及使用方法
SSH是一種加密協(xié)議,用于管理和與服務(wù)器通信,在使用?Linux?服務(wù)器時,您經(jīng)常會花費大量時間在通過?SSH?連接到服務(wù)器的終端會話中,這篇文章主要介紹了Linux?服務(wù)器上配置基于SSH?密鑰的身份驗證及使用方法,需要的朋友可以參考下2024-04-04
Linux如何使用 MyCat 實現(xiàn) MySQL 主從讀寫分離
這篇文章主要介紹了Linux如何 MyCat 實現(xiàn) MySQL 主從讀寫分離,感興趣并且想詳情了解的小伙伴接著看下文吧2021-08-08

