---
name: "echo"
section: "1"
platform: "openbsd"
package: "man"
version: "8.0-current-20261101"
release: "OpenBSD 8.0-current (2026-11-01)"
platforms: ["linux", "freebsd", "openbsd", "macos"]
url: "https://new.carta.tech/echo"
---

# echo(1)

write arguments to the standard output

## NAME

**echo** – write arguments to the standard output

## SYNOPSIS

**echo** \[**-Een**\] \[*string* *...*\]

## DESCRIPTION

The **echo** utility writes any specified operands, separated by single blank (‘ ’) characters and followed by a newline (‘\\n’) character, to the standard output.

When no operands are given, only the newline is written. The **--** operand, which generally denotes an end to option processing, is treated as part of *string*.

The options are as follows:

- **-E**

  Disable interpretation of backslash escape sequences (default).

- **-e**

  Enable interpretation of the following backslash escape sequences:

  - **\\\\**

    A literal backslash.

  - **\\a**

    Alert (BEL).

  - **\\b**

    Backspace.

  - **\\c**

    Suppress further output, including the trailing newline character.

  - **\\e**

    Escape character.

  - **\\f**

    Form feed.

  - **\\n**

    Newline.

  - **\\r**

    Carriage return.

  - **\\t**

    Horizontal tab.

  - **\\v**

    Vertical tab.

  - **\\0***nnn*

    The character whose octal value is *nnn* (zero to three octal digits).

  - **\\x***hh*

    The character whose hexadecimal value is *hh* (one or two hexadecimal digits).

- **-n**

  Do not print the trailing newline character.

## EXIT STATUS

The **echo** utility exits 0 on success, and \>0 if an error occurs.

## SEE ALSO

[csh(1)](/csh/1.md), [ksh(1)](/ksh/1.md), [printf(1)](/printf/1.md)

## STANDARDS

The **echo** utility is compliant with the IEEE Std 1003.1-2008 (“POSIX.1”) specification.

The flags \[**-E**\], \[**-e**\], and \[**-n**\] conflict with the behaviour mandated by the X/Open System Interfaces option of the IEEE Std 1003.1-2008 (“POSIX.1”) specification, which says they should be treated as part of *string*.

**echo** also exists as a built-in to [csh(1)](/csh/1.md) and [ksh(1)](/ksh/1.md), though with a different syntax.

Where portability is paramount, use [printf(1)](/printf/1.md).

## HISTORY

An **echo** utility appeared in Version 2 AT&T UNIX.
