Colored shell script output library
Here is an modified snippet from my dotfiles that should do what you want
RCol='\e[0m' # Text Reset# Regular Bold Underline High Intensity BoldHigh Intens Background High Intensity BackgroundsBla='\e[0;30m'; BBla='\e[1;30m'; UBla='\e[4;30m'; IBla='\e[0;90m'; BIBla='\e[1;90m'; On_Bla='\e[40m'; On_IBla='\e[0;100m';Red='\e[0;31m'; BRed='\e[1;31m'; URed='\e[4;31m'; IRed='\e[0;91m'; BIRed='\e[1;91m'; On_Red='\e[41m'; On_IRed='\e[0;101m';Gre='\e[0;32m'; BGre='\e[1;32m'; UGre='\e[4;32m'; IGre='\e[0;92m'; BIGre='\e[1;92m'; On_Gre='\e[42m'; On_IGre='\e[0;102m';Yel='\e[0;33m'; BYel='\e[1;33m'; UYel='\e[4;33m'; IYel='\e[0;93m'; BIYel='\e[1;93m'; On_Yel='\e[43m'; On_IYel='\e[0;103m';Blu='\e[0;34m'; BBlu='\e[1;34m'; UBlu='\e[4;34m'; IBlu='\e[0;94m'; BIBlu='\e[1;94m'; On_Blu='\e[44m'; On_IBlu='\e[0;104m';Pur='\e[0;35m'; BPur='\e[1;35m'; UPur='\e[4;35m'; IPur='\e[0;95m'; BIPur='\e[1;95m'; On_Pur='\e[45m'; On_IPur='\e[0;105m';Cya='\e[0;36m'; BCya='\e[1;36m'; UCya='\e[4;36m'; ICya='\e[0;96m'; BICya='\e[1;96m'; On_Cya='\e[46m'; On_ICya='\e[0;106m';Whi='\e[0;37m'; BWhi='\e[1;37m'; UWhi='\e[4;37m'; IWhi='\e[0;97m'; BIWhi='\e[1;97m'; On_Whi='\e[47m'; On_IWhi='\e[0;107m';
Then you can just echo -e "${Blu}blue ${Red}red ${RCol}etc...."
echo -e "\033[33;31m Color Text" - red
echo -e "\033[33;32m Color Text" - green
echo -e "\033[33;33m Color Text" - yellow
echo -e "\033[33;34m Color Text" - blue
echo -e "\033[33;35m Color Text" - Magenta
echo -e "\033[33;30m Color Text" - Gray
echo -e "\033[33;36m Color Text" - Cyan
http://techietent.blogspot.in/2013/03/how-to-echo-colored-text-in-linux-shell.html
I took demure's list as inspiration and did a little DRYing out of it. (And changed \e
to the hexadecimal \x1B
, since the former isn't supported in OS X's Terminal.app since Snow Leopard.) Here's what I came up with:
## Colours and font styles## Syntax: echo -e "${FOREGROUND_COLOUR}${BACKGROUND_COLOUR}${STYLE}Hello world!${RESET_ALL}"# Escape sequence and resetsESC_SEQ="\x1b["RESET_ALL="${ESC_SEQ}0m"RESET_BOLD="${ESC_SEQ}21m"RESET_UL="${ESC_SEQ}24m"# Foreground coloursFG_BLACK="${ESC_SEQ}30;"FG_RED="${ESC_SEQ}31;"FG_GREEN="${ESC_SEQ}32;"FG_YELLOW="${ESC_SEQ}33;"FG_BLUE="${ESC_SEQ}34;"FG_MAGENTA="${ESC_SEQ}35;"FG_CYAN="${ESC_SEQ}36;"FG_WHITE="${ESC_SEQ}37;"FG_BR_BLACK="${ESC_SEQ}90;"FG_BR_RED="${ESC_SEQ}91;"FG_BR_GREEN="${ESC_SEQ}92;"FG_BR_YELLOW="${ESC_SEQ}93;"FG_BR_BLUE="${ESC_SEQ}94;"FG_BR_MAGENTA="${ESC_SEQ}95;"FG_BR_CYAN="${ESC_SEQ}96;"FG_BR_WHITE="${ESC_SEQ}97;"# Background colours (optional)BG_BLACK="40;"BG_RED="41;"BG_GREEN="42;"BG_YELLOW="43;"BG_BLUE="44;"BG_MAGENTA="45;"BG_CYAN="46;"BG_WHITE="47;"# Font stylesFS_REG="0m"FS_BOLD="1m"FS_UL="4m"
The BR_
colours are the "bright" or "high-intensity" colours. Done this way, you can even mix them with other font styles. (e.g. underlined bright white)
If you want to bookmark this, I made a gist for it: https://gist.github.com/ian128K/39a490e5aa8d3bb77a8b