The way it is read is foreground and effect is on the row titles and the backgrounds are on the column titles. Hopefully someone else will find this useful.
#!/bin/bash
#
# This file echoes a bunch of color codes to the
# terminal to demonstrate what's available. Each
# line is the color code of one forground color,
# out of 17 (default + 16 escapes), followed by a
# test use of that color on all nine background
# colors (default + 8 escapes).
#
# Attribute codes:
# 00=none 01=bold 04=underscore 05=blink 07=reverse 08=concealed
# Text color codes:
# 30=black 31=red 32=green 33=yellow 34=blue 35=magenta 36=cyan 37=white
# Background color codes:
# 40=black 41=red 42=green 43=yellow 44=blue 45=magenta 46=cyan 47=white
#
# A quick test can be done by echo -e "\033[<color code><test text>\033[0m"
# e.g. echo -e "\033[01;32mHello World\033[0m"
#
# Modified from: http://tldp.org/HOWTO/Bash-Prompt-HOWTO/x329.html
T='gYw' # The test text
# smaller set without attribute codes commented out below
#echo -e "\n 40m 41m 42m 43m 44m 45m" \
# " 46m 47m";
#for FGs in ' m' ' 1m' ' 30m' ' 31m' ' 32m' ' 33m' ' 34m' ' 35m' \
# ' 36m' ' 37m' ;
echo -e "\n 40m 41m 42m 43m 44m 45m" \
" 46m 47m";
for FGs in ' m' ' 1m' \
' 30m' '01;30m' '02;30m' '03;30m' '05;30m' '07;30m' '08;30m' \
' 31m' '01;31m' '02;31m' '03;31m' '05;31m' '07;31m' '08;31m' \
' 32m' '01;32m' '02;32m' '03;32m' '05;32m' '07;32m' '08;32m' \
' 33m' '01;33m' '02;33m' '03;33m' '05;33m' '07;33m' '08;33m' \
' 34m' '01;34m' '02;34m' '03;34m' '05;34m' '07;34m' '08;34m' \
' 35m' '01;35m' '02;35m' '03;35m' '05;35m' '07;35m' '08;35m' \
' 36m' '01;36m' '02;36m' '03;36m' '05;36m' '07;36m' '08;36m' \
' 37m' '01;37m' '02;37m' '03;37m' '05;37m' '07;37m' '08;37m';
do FG=${FGs// /}
echo -en " $FGs \033[$FG $T "
for BG in '40m' '41m' '42m' '43m' '44m' '45m' '46m' '47m';
do echo -en "$EINS \033[$FG\033[$BG $T \033[0m";
done
echo;
done
echo
As a side note, for those who may be like myself and didn't see any logic to the codes used for colors, ls and most terminals use the ANSI escape codes (ECMA-48), which is where the numbers come from.
No comments:
Post a Comment