LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Newbie (http://www.linuxquestions.org/questions/linux-newbie-8/)
-   -   Output Text in color, in console (http://www.linuxquestions.org/questions/linux-newbie-8/output-text-in-color-in-console-684882/)

skyknight 11-20-2008 09:02 AM

Output Text in color, in console
 
I want to get `echo xxx` output in color, what I have to do for that?

Thanks.

colucix 11-20-2008 09:20 AM

You have to use the -e option of echo and the proper escape sequence. The Advanced Bash Scripting Guide explains it all, section 33.6. Also look at the Bash Prompt HOWTO. Some useful information there and the following script to demonstrate:
Code:

#!/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).
#

T='gYw'  # The test text

echo -e "\n                40m    41m    42m    43m\
    44m    45m    46m    47m";

for FGs in '    m' '  1m' '  30m' '1;30m' '  31m' '1;31m' '  32m' \
          '1;32m' '  33m' '1;33m' '  34m' '1;34m' '  35m' '1;35m' \
          '  36m' '1;36m' '  37m' '1;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


skyknight 11-21-2008 01:39 AM

Thanks for your resons... It is very helpful....
 
Is there any possiblities for modifying the console text area.... like I want to have a constant line at the top of all my consoles where i can display battery power, time etc...


All times are GMT -5. The time now is 10:11 PM.