How does one output bold text in Bash?

JamesRat picture JamesRat · May 27, 2010 · Viewed 182.2k times · Source

I'm writing a Bash script that prints some text to the screen:

echo "Some Text"

Can I format the text? I would like to make it bold.

Answer

psmears picture psmears · May 27, 2010

The most compatible way of doing this is using tput to discover the right sequences to send to the terminal:

bold=$(tput bold)
normal=$(tput sgr0)

then you can use the variables $bold and $normal to format things:

echo "this is ${bold}bold${normal} but this isn't"

gives

this is bold but this isn't