display-message-on-screen• [ECHO]


Display messages on screen, turn command-echoing on or off.

Syntax ECHO [ON | OFF]  ECHO [message] Key ON : Display each line of the batch on screen (default) OFF : Only display the command output on screen message : a string of characters to display

Type ECHO without parameters to display the current echo setting (ON or OFF).

In most batch files you will want ECHO OFF, turning it ON can be useful when debugging a problematic batch script.

In a batch file, the @ symbol is the same as ECHO OFF applied to the current line only.

Normally a command is executed and takes effect from the next line onwards, @ is a rare example of a command that takes effect immediately.

Command characters will normally take precedence over the ECHO statement
e.g. The redirection and pipe characters: & < > | ON OFF

To override this behaviour you can escape each command character with ^ as follows:

 ECHO Nice ^&Easy ECHO Salary is ^> Commision ECHO Name ^| Username ^| Expiry Date ECHO:Off On Holiday

Echo text into a FILE

The general syntax is
Echo This is some Text > FileName.txt

To avoid extra spaces:
Echo Some more text>FileName.txt

Echo a Variable

To display a department variable:

ECHO %_department%

An alternative is to separate with : instead of a space, this has some performance benefits.


If the variable does not exist – ECHO will simply return the text “%_department%”

This can be extended to search and replace parts of a variable or display substrings of a variable.

Echo a file

Use the TYPE command.

Echo a sound

The following command in a batch file will trigger the default beep on most PC’s


To type the BELL character use Ctrl-G or ‘Alt’ key, and 7 on the numeric keypad. (ascii 7)

Alternatively using Windows Media Player:
START/min “C:Program FilesWindows Media Playerwmplayer.exe” %windir%mediachimes.wav

Echo a blank line

The following in a batch file will produce an empty line:
The second option is better, because Echo. will search for a file named “echo” if this file does not exist the command does work, but this makes it slower than echo(

To ECHO text without including a CR/LF (source)
<nul (set/p _any_variable=string to emit)

Echo text into a stream

Streams allow one file to contain several separate forks of information (like the macintosh resource fork)

The general syntax is

 Echo Text_String > FileName:StreamName

Only the following commands support the File:Stream syntax – ECHO, MORE, FOR

Creating streams:

Echo This is stream1 > myfile.dat:stream1 Echo This is stream2 > myfile.dat:stream2 

Displaying streams:

 More < myfile.dat:stream1  More < myfile.dat:stream2  FOR /f "delims=*" %%G in (myfile.dat:stream1) DO echo %%G FOR /f "delims=*" %%G in (myfile.dat:stream2) DO echo %%G

A data stream file can be successfully copied and renamed despite the fact that most applications and commands will report a zero length file. The file size can be calculated from remaining free space. The file must always reside on an NTFS volume.

ECHO is an internal command.

“The only thing that helps me pass the time away; is knowing I’ll be back at Echo Beach some day” ~ Martha and the Muffins


SET – Create and display environment variables
TYPE – Display the contents of a text file
BigText.cmd – Batch file to echo giant size characters
SoundRecorder.exe – Record
Q177795 – Large vs Small fonts
Q901115 – Terminal Services/Citrix client makes beep sounds
Equivalent PowerShell cmdlet: Write-Host
Equivalent bash command: echo – Display message on screen

« Back to Glossary Index