Close this search box.

An Introduction to Echo Command

Table of Contents

Get up to 50% off now

Become a partner with CyberPanel and gain access to an incredible offer of up to 50% off on CyberPanel add-ons. Plus, as a partner, you’ll also benefit from comprehensive marketing support and a whole lot more. Join us on this journey today!

The ‘echo’ command is a primary utility in Windows, Unix, and Linux based environments, it is famous for its versatile and simplistic nature. It is commonly used to show lines of variables and text, and this makes it a vital tool for command-line operations and scripting. It does not matter if you are a seasoned professional or new to programming, you can improve your abilities in everyday command line tasks and shell scripting.  Our focus today will be on the basics of echo command, options, its basic use, and practical examples to help you understand how to use it. 

What is Echo Command?

The echo command is a built-in feature that is commonly found on most operating systems including Windows, Linux, and Unix. It functions by outputting the variables and strings passed to it. It is also commonly used in batch files and shell scripts to debug scripts, display messages, and generate formatted output.

What is the significance of Echo Command?

The echo command is immensely important to the Linux/Unix command-line environments as well as shell scripting. Moreover, the echo command is praised for its versatility and simplicity. The most common use for echo is to display text, provide feedback, debug scripts, and for establishing communication with users. It also shows values of variables that is immensely important for running scripts correctly. The echo command also allows users to write text to files, which is used to create logs and configuration files. Moreover, it also has command substitution which is essential in displaying dynamic content within scripts. 

For shell scripting, echo is used to create interactive menus, it provides status updates and prompting for input, making scripts more user-friendly. The echo command has a prominent role in debugging, developers can trace the flow of execution and check variable values by inserting an echo statement. You also get output formatting options, to help you increase readability and output in the longrun. 

You can create powerful one-liners and complex pipelines for enhanced text processing by seamlessly integrating echo commands with other Unix tools. The echo command is compatible with a variety of systems including Linux, Unix, Windows, Mac Os, and more. For newbies, echo is an important tool that provides a basic insight into command syntax, scripting concepts, and variable usage. Its use will grow with the user’s skillset, showing how a simple command can generate complex outputs.

In conclusion, echo is an irreplaceable toolkit for users to display texts, format outputs, interact with users, and debug scripts. It is powerful and simple, making it useful for both experienced and novice users. Let’s explain how it can be used:

Tech Delivered to Your Inbox!

Get exclusive access to all things tech-savvy, and be the first to receive 

the latest updates directly in your inbox.


The common syntax of the echo command is relatively simple:

echo [option(s)] [string(s)]
option(s): Optional flags that change the behavior of the command.
string(s): The text or string you want to show.

Simple Usage

The easiest use of echo command is to show a string of text:

echo "This is CyberPanel!"

This command will output:
Echo Command Syntax

Common Options

Though echo is easy to use, it has a few options that may enhance its functionalities. Here are some of the common options used:

Newline Suppression

The echo adds a newline character when each output ends by default settings. However, you can prevent the newline by using the -n option:

echo -n "Hello, World!"

The command would result in the output: Hello, World! And no new line is added after the text.

Escape Sequence Enabling

The -e option allows the interpretation of backlash escapes, Here are a few of the most used escape sequences. 

  • \n: New line
  • \t: Horizontal tab
  • \\: Backslash
  • \a: Alert (bell)


echo -e "Hello,\nWorld!"

This command will output:

new line echo command

Escape Sequence Disabled

Here the -E options make sure that backlashes are not thought of as escape characters (this is the built-in behavior in most echo versions)

echo -E "Hello,\nWorld!"

This will output:

Enhance Your CyerPanel Experience Today!
Discover a world of enhanced features and show your support for our ongoing development with CyberPanel add-ons. Elevate your experience today!


Moving onto Practical Applications

Displaying Variables

Developers commonly use echo to show the value of shell variables, for example:


“echo $job

This will output:

Output Redirecting

The echo command is commonly used to write output to files. This may be done using output redirection operators (> and >>):

echo "Hello, World!" > hello.txt

This command displays Hello, World! In a file with the name hello.txt, it overwrites if the file already exists. To prevent the file from overwriting, you can use >> operator:

echo "Hello again!" >> hello.txt

Combining Commands

You can also use echo in combination with other scripts and commands. This creates more complex operations, for instance using it in a loop.  

for ((i=1; i<=5; i++))
 echo "Value: $i"

This will output:

Simple Menus Creation

Simple interactive menus in shell scripts can also be created by using echo:

# Function to display the menu
show_menu() {
    echo "========== Simple Menu =========="
    echo "1. Option 1"
    echo "2. Option 2"
    echo "3. Option 3"
    echo "4. Exit"

# Function to execute based on user choice
handle_choice() {
    local choice
    read -p "Enter your choice: " choice
    case $choice in
        1) option_1 ;;
        2) option_2 ;;
        3) option_3 ;;
        4) exit ;;
        *) echo "Invalid choice. Please try again." ;;

# Define functions for each option
option_1() {
    echo "You selected Option 1"
    read -p "Press Enter to continue..." enter_key

option_2() {
    echo "You selected Option 2"
    read -p "Press Enter to continue..." enter_key

option_3() {
    echo "You selected Option 3"
    read -p "Press Enter to continue..." enter_key

# Main function to run the menu
main() {

Advanced Tips

Command Substitution Using echo

You may use echo by connecting words/prompts with command substitution to show output of other commands:

echo "Current date and time: $(date)"

The current date and time will be outputted by this command:

echo command date & time

Output Coloring

You may use ANSI escape code to give colors to your output, since echo itself does not have an option to provide colors to text:

echo -e “\e[31mThis text is red!\e[0m”

echo command color

The inputs above will show the text in red. Here are some prompts to use other common colors:

  • Red: \e[31m
  • Green: \e[32m
  • Yellow: \e[33m
  • Blue: \e[34m
  • Magenta: \e[35m
  • Cyan: \e[36m

Text with Multi-line

You can use -e option with \n or use the Here document (<<) to display multi-line texts:

Using \n:

echo -e "This is line 1\nThis is line 2\nThis is line 3"

This will be the output:

echo command multi-line

Special Characters Print

You can use the echo command to print special characters if you escape them by using backlash (\)


echo "Hello\nWorld"





The newline is represented by \n which is a special character

Writing to a File 

Echo can be used to write output to a file using redirection (> for overwrite or >> for append.)


echo "This is a line of text" > output.txt


> redirects output of echo command to output.txt. This overwrites all existing content.

Appending to a file:

echo “This is another line of text” >> output.txt


>> is used to append the output of the echo command to output.txt.

Writing to File and Terminal Both

You can use tee to write both file and terminal. 


echo "This will go to the terminal and the file" | tee output.txt


The standard input is read by tee and it writes to both standard output and the specified date.

Debug Dynamic Commands

You can potentially print generated commands using echo to help with debugging before execution. 


command="ls -l"
echo "Executing: $command"


The command is first printed by echo before execution, this helps verify the command.

Show Formatted Text

You can format text by using echo with escape sequences. However, printf is sometimes better for complex formatting.


echo -e "Column1\tColumn2\nData1\tData2"


  • \n is the newline and \t is a tab character 
  • Backlash escape interpretation is enabled by -e

Other Commands Execution

Using $(…) or backticks (‘) lets the echo command execute other commands and print their output. 


echo "The current directory is: $(pwd)"


The current directory is: /path/to/current/directory


$(pwd) executes the pwd command, and echo prints the output

Using backticks:

echo “The current date and time is: `date`”


The current date and time is: Mon May 20 15:23:42 UTC 2024


‘Date’ executes date common and echo prints the output

Echo Repertoire

An echo repertoire are Linux commands that are indispensable. Here commands are made using a sequence of commands that are referenced to one another, effectively creating a chain of actions that depend on one another. Here is an example of one such sequence of Linux commands.

  1. Create a text file that has content

echo “Hello, World!” > example.txt

  1. Display file content

cat example.txt

# Output: Hello, World!

  1. Counting word numbers in the file

wc -w example.txt

# Output: 2 example.txt

  1. Add more text to the file:

echo “This is a test file.” >> example.txt

  1. Display content that was updated on the file:

cat example.txt

# Output:

# Hello, World!

# This is a test file.

  1. Count words, characters, and number of lines on the file:

wc example.txt

# Output:

# 2 6 32 example.txt

This example shows how echo command is used to add and create content to files. Here each step is used to build the next one, showing how an echo repertoire can be used for Linux commands.

Final Thoughts

The echo command is an essential and versatile tool in Linux/Unix command-line toolbox. If you can understand echo potential applications and options, you can improve your effectiveness and efficiency while working in a shell environment. From completing difficult scripting tasks to displaying simple text messages, echo has proven to be an indispensable tool in one’s arsenal. It does not matter if you are a seasoned professional or a novice individual who is looking to improve their skills, mastering echo command is essential to becoming a skilled command-line user.

Mubashir Ijaz

I write to help and inform people about various topics. My passion for learning and to share knowledge allows me excel as a content creator
Unlock Benefits

Become a Community Member

Setting up CyberPanel is a breeze. We’ll handle the installation so you can concentrate on your website. Start now for a secure, stable, and blazing-fast performance!