5+ echo Command Examples in Linux


This tutorial explains Linux “echo” command, options and its usage with examples.

echo – Writes character strings to standard output.


The echo command writes character strings to standard output. Strings are separated by spaces, and a new-line character follows the last String parameter specified. If no String parameter is specified, a blank line (new-line character) is displayed.


echo [OPTIONS] [ String … ]


On BSD and some variants derived from BSD does not begin a new line after the echoed text.
on some variants this option is necessary to enable recognition of escape characters in string


Escape Characters

The echo command recognizes the following escape conventions:

Displays an alert character.
Displays a backspace character.
Suppresses the new-line character that otherwise follows the final argument in the output. All characters following the \c sequence are ignored.
Displays a form-feed character.
Displays a new-line character.
Displays a carriage return character.
Displays a tab character.
Displays a vertical tab character.
Displays a backslash character.
Displays an 8-bit character whose ASCII value is a 0-, 1-, 2-, or 3-digit octal number.


1. To write a message to standard output, enter:

$ echo Hi there
Hi there

2. To display a message containing special characters, enter:

$ echo -e "I'm at lunch.\nI'll be back at 1:00."
I'm at lunch.
I'll be back at 1:00.

Note: You must put the message in quotation marks if it contains escape sequences. Otherwise, the shell interprets the \ (backslash) as a metacharacter and treats the \ differently.


3. Wildcards

$ echo *
Desktop Documents ls-output.txt Music Pictures Public Templates Videos

The above example would list all the files and directories in the current directory.

4. To add a single line of text to a file, enter:

$ echo Remember to set the shell search path to $PATH. >>notes

This usage adds the message to the end of the file notes after the shell substitutes the value of the PATH shell variable.


5. Arithmetic Expansion

$ echo $((2 + 2))

Arithmetic expansion uses the form:

where expression is an arithmetic expression consisting of values and arithmetic operators.

Arithmetic expansion only supports integers (whole numbers, no decimals), but can perform quite a number of different operations.

6. Command Substitution

Command substitution allows us to use the output of a command as an expansion:

$ echo $(cal)
December 2013 Su Mo Tu We Th Fr Sa 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
$ echo "$(cal)"
   December 2013      
Su Mo Tu We Th Fr Sa  
 1  2  3  4  5  6  7  
 8  9 10 11 12 13 14  
15 16 17 18 19 20 21  
22 23 24 25 26 27 28  
29 30 31

Note : We should take a moment to look at the effect of double quotes on command substitution. By default, word-splitting looks for the presence of spaces, tabs, and newlines (linefeed characters) and treats them as delimiters between words. This means that unquoted spaces, tabs, and newlines are not considered to be part of the text. They only serve as separators. Since they separate the words into different arguments, our example command line contains a command followed by four distinct arguments. If we add double quotes word-splitting is suppressed and the embedded spaces are not treated as delimiters, rather they become part of the argument. Once the double quotes are added, our command line contains a command followed by a single argument. The fact that newlines are considered delimiters by the word-splitting mechanism causes an interesting, albeit subtle, effect on command substitution.

Sanfoundry Global Education & Learning Series – 1000 Linux Tutorials.

If you wish to look at all Linux commands and their usage examples, go to Linux Commands Tutorial.

Subscribe to our Newsletters (Subject-wise). Participate in the Sanfoundry Certification contest to get free Certificate of Merit. Join our social networks below and stay updated with latest contests, videos, internships and jobs!

Youtube | Telegram | LinkedIn | Instagram | Facebook | Twitter | Pinterest
Manish Bhojasia - Founder & CTO at Sanfoundry
Manish Bhojasia, a technology veteran with 20+ years @ Cisco & Wipro, is Founder and CTO at Sanfoundry. He lives in Bangalore, and focuses on development of Linux Kernel, SAN Technologies, Advanced C, Data Structures & Alogrithms. Stay connected with him at LinkedIn.

Subscribe to his free Masterclasses at Youtube & technical discussions at Telegram SanfoundryClasses.