Sentry Answers>Bash>

Print a multi-line string in Bash

Print a multi-line string in Bash

David Y.

The Problem

How can I print a string with multiple lines in Bash?

Click to Copy
echo "Hello\nworld"

produces:

Click to Copy
Hello\nworld

The Solution

On some systems, echo includes a -e parameter, which will enable escape sequences like \n. So this:

Click to Copy
echo -e "Hello\nworld"

should produce:

Click to Copy
Hello world

However, not all versions of echo support this flag. A more reliable and portable alternative is to use printf instead of echo:

Click to Copy
printf "Hello\nworld"

will produce:

Click to Copy
Hello world

You can read more about printf by typing man printf into your terminal.

  • Syntax.fmListen to the Syntax Podcast (opens in a new tab)
  • ResourcesWhat is Distributed Tracing (opens in a new tab)
  • Syntax.fm logo
    Listen to the Syntax Podcast (opens in a new tab)

    Tasty treats for web developers brought to you by Sentry. Get tips and tricks from Wes Bos and Scott Tolinski.

    SEE EPISODES

Considered “not bad” by 4 million developers and more than 150,000 organizations worldwide, Sentry provides code-level observability to many of the world’s best-known companies like Disney, Peloton, Cloudflare, Eventbrite, Slack, Supercell, and Rockstar Games. Each month we process billions of exceptions from the most popular products on the internet.