什么是“回显”?
“回显”字面意思是“重复发出声音”,在 CMD 中,它指的是是否在屏幕上显示命令本身。

- 默认情况下,当你输入一个命令并按回车时,CMD 会先显示这个命令,然后执行它,最后显示命令的输出结果。
- 回显关闭后,你输入的命令本身不会显示在屏幕上,但命令依然会执行,其输出结果依然会显示。
ECHO 命令的基本用法
ECHO 命令主要有两种状态:开启和关闭。
A. 查看当前回显状态
在修改之前,你可以先查看当前的回显状态是开启还是关闭。
ECHO
- 如果回显开启,会显示:
ECHO is on - 如果回显关闭,会显示:
ECHO is off
B. 开启回显
使用 ECHO ON 命令可以开启回显功能。
ECHO ON
执行后,之后输入的所有命令都会在执行前被显示出来,这通常是批处理文件的默认状态。

C. 关闭回显
使用 ECHO OFF 命令可以关闭回显功能。
ECHO OFF
执行后,之后输入的所有命令都不会再显示出来,这在编写批处理文件时非常有用,可以让输出结果更干净,只显示你想要的信息。
ECHO 命令的特殊用法:显示文本
ECHO 命令除了控制回显开关,还有一个非常常用的功能:在屏幕上显示指定的文本或信息。
语法:

ECHO [你的文本信息]
示例:
ECHO Hello, World!
执行后,屏幕会显示:
Hello, World!
重要提示:
- 当你想显示文本时,文本内容后面不需要跟
ON或OFF。 - 如果你输入
ECHO ON或ECHO OFF,系统会将其视为“开启/关闭回显”的命令,而不是显示 "ON" 或 "OFF" 这两个词。
如何显示 "ON" 或 "OFF" 这两个词?
你可以在 ON 或 OFF 前面加上一个空格,或者使用 (批处理中的注释符,但在此处能被正确解析):
ECHO. ON ECHO OFF
这两行都会在屏幕上显示 ON。
一个非常重要的特殊用法:ECHO. (输出空行)
在批处理脚本中,ECHO. 是一个非常实用的技巧,用于在输出中插入一个空行,使界面更清晰易读。
语法:
ECHO.
注意:
ECHO.和ECHO(后面跟一个空格) 是不同的。ECHO会输出一个空格,而ECHO.才是输出一个真正的换行(空行)。- 在某些极旧的 Windows 版本中,
ECHO.可能无法正常工作,现代系统已无此问题。
ECHO 在批处理脚本中的应用
ECHO 命令在批处理文件(.bat 或 .cmd)中是核心,下面我们通过一个例子来对比开启和关闭回显的区别。
示例 1:回显开启 (ECHO ON)
创建一个名为 test_on.bat 的文件,内容如下:
@ECHO OFF ECHO 这是第一条信息 PING 127.0.0.1 -n 2 > nul ECHO 这是第二条信息
解释:
@ECHO OFF:这是一个特殊的用法, 符号表示不显示当前这行命令本身,所以即使ECHO OFF是关闭回显的命令,你也不会在屏幕上看到它,它立刻关闭了后续所有命令的回显。ECHO 这是第一条信息:显示文本。PING ... > nul:这是一个延迟2秒的命令,> nul表示将命令的输出(结果)丢弃,不显示在屏幕上。ECHO 这是第二条信息:显示文本。
运行结果:
你会看到屏幕上只显示了两行信息,中间有2秒的延迟,看不到任何 ECHO 或 PING 命令本身。
这是第一条信息
(等待2秒...)
这是第二条信息
(注意:ECHO. 输出的空行也包含在内)
示例 2:回显关闭 (ECHO OFF)
创建一个名为 test_off.bat 的文件,内容如下:
ECHO OFF ECHO 这是第一条信息 PING 127.0.0.1 -n 2 > nul ECHO 这是第二条信息
运行结果:
你会发现结果和上面完全一样!这是因为 ECHO OFF 已经关闭了所有后续命令的回显,这证明了 @ECHO OFF 只是为了隐藏设置命令本身而做的优化。
将命令输出重定向到文件
ECHO 命令也可以和重定向符号 > 结合使用,将文本写入到一个文件中。
语法:
ECHO [你的文本信息] > [文件名.txt]
注意: > 会覆盖文件原有的内容。
示例:
ECHO Today is > mylog.txt ECHO 2025-10-27 >> mylog.txt
- 第一行会创建一个名为
mylog.txt的文件,并写入 "Today is"。 - 第二行使用
>>(两个大于号),表示追加内容到文件末尾,而不是覆盖,文件最终内容为:Today is 2025-10-27
总结表格
| 命令 | 功能 | 示例 | 输出 |
|---|---|---|---|
ECHO |
查看当前回显状态 | ECHO |
ECHO is on 或 ECHO is off |
ECHO ON |
开启回显 | ECHO ON |
(无输出,之后命令会显示) |
ECHO OFF |
关闭回显 | ECHO OFF |
(无输出,之后命令不显示) |
ECHO 文本 |
显示指定文本 | ECHO Hello |
Hello |
ECHO. |
输出一个空行 | ECHO. |
(一个空行) |
ECHO 文本 > 文件 |
将文本写入文件(覆盖) | ECHO Hi > test.txt |
创建 test.txt,内容为 "Hi" |
ECHO 文本 >> 文件 |
将文本追加到文件 | ECHO Bye >> test.txt |
在 test.txt 末尾追加 "Bye" |
掌握 ECHO 命令是学习和编写批处理脚本的第一步,希望这个详细的解释对你有帮助!
