Assuming your terminal supports ANSI colors, it is quite easy. You just need to add certain echo statements to achieve certain colors.
The syntax is: echo "^[[#m<text>"
Where the the "^[" character is produced by hitting ctrl-v and then escape and # is substituted with a number depending on the effect you want the second "[" and the "m" are literal characters. Here's an excerpt from some C code listing the various colors (because I'm too lazy to retype it in a different format):
Code:
/* foreground colors */
#define AFC_BLACK 30
#define AFC_RED 31
#define AFC_GREEN 32
#define AFC_YELLOW 33
#define AFC_BLUE 34
#define AFC_MAGENTA 35
#define AFC_CYAN 36
#define AFC_WHITE 37
/* ansi background colors */
#define ABC_BLACK 40
#define ABC_RED 41
#define ABC_GREEN 42
#define ABC_YELLOW 43
#define ABC_BLUE 44
#define ABC_MAGENTA 45
#define ABC_CYAN 46
#define ABC_WHITE 47
/* ansi modes */
#define AM_NORMAL 0
#define AM_BOLD 1
#define AM_LOWINTESITY 2
#define AM_ITALIC 3
#define AM_UNDERLINE 4
#define AM_BLINK 5
#define AM_RAPIDBLINK 6
#define AM_REVERSE 7
#define AM_INVISIBLE 8
You can combine the modes, so to print the word "hello" in yellow text on a blue background and then return to normal you would use:
echo "^[[33m^[[44mhello^[[0m"