Go to main content

man pages section 1: User Commands

Exit Print View

Updated: July 2017



echo - echo arguments to standard output


/usr/ucb/echo [-n] [


echo writes its arguments, separated by BLANKs and terminated by a NEWLINE, to the standard output.

echo is useful for producing diagnostics in command files and for sending known data into a pipe, and for displaying the contents of environment variables.

For example, you can use echo to determine how many subdirectories below the root directory (/) is your current directory, as follows:

  • echo your current-working-directory's full pathname

  • pipe the output through tr to translate the path's embedded slash-characters into space-characters

  • pipe that output through wc –w for a count of the names in your path.

    example% /usr/bin/echo "echo $PWD | tr '/' ' ' | wc -w"

See tr(1) and wc(1) for their functionality.

The shells csh(1), ksh(1), and sh(1), each have an echo built-in command, which, by default, will have precedence, and will be invoked if the user calls echo without a full pathname. /usr/ucb/echo and csh's echo() have an –n option, but do not understand back-slashed escape characters. sh's echo(), ksh's echo(), and /usr/bin/echo, on the other hand, understand the black-slashed escape characters, and ksh's echo() also understands \a as the audible bell character; however, these commands do not have an –n option.



Do not add the NEWLINE to the output.


See attributes(5) for descriptions of the following attributes:


See Also

csh(1), echo(1), ksh(1), sh(1), tr(1), wc(1), attributes(5)


The –n option is a transition aid for BSD applications, and may not be supported in future releases.

This command is obsolete and will be removed in a future release of Oracle Solaris. See echo(1) for an alternate implementation of this command. Note that echo(1) does not support the –n option that echo(1B) supports.