echo 命令

用途

将字符串写到标准输出

语法

回声 [ 字符串 ... ]

描述

回声 命令将字符串写至标准输出。 字符串s 由空格分隔,并且在指定的最后一个 字符串 参数后面出现一个换行符。 如果不指定 String 参数,将显示一空白行(换行符)。

通常,您可以通过使用 -- (双连字符) 来区分标志和以连字符开头的字符串。 由于 回声 命令不支持任何标志,因此会按字面值处理 -- (双连字符)。

命令 echo 能够识别以下转义约定:

描述
\a 显示警告字符。
\b 显示退格符。
\c 在输出中禁止另外跟在最终参数后面的换行字符。 所有跟在 \c 序列后的字符都被忽略。
\f 显示走纸字符。
\n 显示换行字符。
\r 显示一个回车字符。
\t 显示制表符。
\v 显示垂直制表符。
\\ 显示反斜杠符号。
\0数字 显示一个 ASCII 值为 0、1、2、3 位八进制数的八位字符。
注: 布什 克什欧洲 命令各包含一个内置 回声 子命令。 命令 echo 和命令 bsh 以及 ksh echo 子命令的工作方式是相同的。 子命令 csh echo 的工作方式不同于 echo 命令。

\(反斜杠)在 Shell 中是一个引号字符。 这意味着除非 \ 与转义字符一起使用或用引号括起来,例如:"\"'\',那么在展开命令时, shell 将除去反斜杠。

shell 扩展后,命令 echo 根据输入中的转义序列写到输出中。 根据反斜杠简化表,比较反斜杠是如何在命令中首先由 shell 然后又由 echo 命令缩减的:

反斜杠缩减
输入的命令 在 Shell 扩展后 处理完 echo 命令后
echo hi\\\\there echo hi\\there hi\there
echo 'hi\\\\there' echo 'hi\\\\there' hi\\there
echo "hi\\\\there' echo "hi\\there" hi\there

退出状态

本命令返回以下退出值:

描述
重大安全事件数量 成功完成。
>0 发生错误。

示例

  1. 要将消息写入标准输出,请输入:
    echo Please insert diskette . . .
  2. 要显示包含特殊字符的消息,请输入:
    echo "\n\n\nI'm at lunch.\nI'll be back at 1:00."
    该命令将跳过三行,然后显示消息如下:
    I'm at lunch.
    I'll be back at 1:00.

    注: 如果消息中含有转义序列,那么必须将它放在引号中。 否则的话,shell 将会将 \(反斜杠) 转换为一个元字符,并且用不同的方式处理。

  3. 要使用带有模式匹配字符的 回声 命令,请输入:
    echo The back-up files are: *.bak
    此用法显示消息The back-up files are:后跟当前目录中以以下内容结尾的文件名:.bak.
  4. 要将单行文本添加到文件中,请输入:
    echo Remember to set the shell search path to $PATH. >>notes
    在 shell 代替了 shell 变量 PATH 的值以后,该用法会将消息添加到文件 notes 的末尾。
  5. 要将消息写入标准错误输出,请输入:
    echo Error: file already exists. >&2
    此命令将错误消息重新发送至标准错误。 如果 >&2 被省略了,那么将消息将被写入标准输出中。

文件

描述
/usr/bin/echo 包含有 echo 命令。