echo (command)
In computing, echo
is a command in DOS, OS/2, Microsoft Windows, Singularity, Unix and Unix-like operating systems that places a string on the computer terminal. It is a command typically used in shell scripts and batch files to output status text to the screen or a file.
Many shells, including Bash[1] and zsh,[2] implement echo
as a builtin command.
History
echo began within Multics, and became part of Version 2 Unix. echo -n in Version 7 replaced prompt, which behaved like the command without a newline.[3]
Usage example
> echo Hello world Hello world
Using ANSI escape code SGR sequences, compatible terminals can print out colored text:
FGRED=`echo "\033[31m"`
FGCYAN=`echo "\033[36m"`
BGRED=`echo "\033[41m"`
FGBLUE=`echo "\033[35m"`
BGGREEN=`echo "\033[42m"`
NORMAL=`echo "\033[m"`
and after :
echo "${FGBLUE} Text in blue ${NORMAL}"
echo "Text normal"
echo "${BGRED} Background in red"
echo "${BGGREEN} Background in Green and back to Normal ${NORMAL}"
Some variants of Unix, such as Linux, support the options -n
and -e
, and do not process escape sequences unless the -e
option is supplied. For example, FGRED=`echo -e "\033[31m"`
might be used under Linux. Unfortunately, such options are non standard[4] due to historical incompatibilities between BSD and System V; the printf
command can be used in situations where this is a problem. It is therefore recommended that printf
be used to ensure that escape sequences are processed. The equivalent code using printf
is simply FGRED=`printf "\033[31m"`
.
See also
References
- ↑ https://www.gnu.org/software/bash/manual/html_node/Bash-Builtins.html
- ↑ http://zsh.sourceforge.net/Doc/Release/Shell-Builtin-Commands.html
- ↑ McIlroy, M. D. (1987). A Research Unix reader: annotated excerpts from the Programmer's Manual, 1971–1986 (PDF) (Technical report). CSTR. Bell Labs. 139.
- ↑ IEEE Std 1003.1, 2004, documentation for echo
External links
- : write arguments to standard output – Commands & Utilities Reference, The Single UNIX® Specification, Issue 7 from The Open Group
- Microsoft TechNet Echo article
|
|