批处理中的 echo 命令

Siddharth Bishnoi 2023年1月30日 2022年7月18日
  1. 批处理使用 echo 命令
  2. 使用 echo 命令打印消息
  3. echo 批处理文件中的新行或空白行
  4. echo 文本到文件中
  5. 使用 echo 命令回显变量
  6. 回显系统路径
  7. 使用带有转义命令字符的 echo 命令
  8. 结论
批处理中的 echo 命令

在 Windows 中,echo 命令在命令行上显示消息。除了 Command shell 和 PowerShell,它还可以在许多其他操作系统 shell 中使用,例如 DOS、OS/2、ReactOS 和其他 Unix 和类 Unix 操作系统。

如今,它主要用于 shell 脚本和批处理文件。让我们讨论 Batch 的 echo 命令及其选项。

批处理使用 echo 命令

echo 命令是一个内部命令,用于打印屏幕上的文本或打开或关闭命令回显。它不设置 errorlevel 或清除 errorlevel

在运行批处理文件时执行的每个命令都会与输出一起显示在命令行上。当我们运行一个批处理文件时,所有的命令都是按顺序逐行执行的。

使用 echo 命令,即使使用 echo 命令本身,我们也可以关闭命令提示符中命令的回显。

语法:

echo [on | off]
echo <message>
echo /?
  • on - 显示命令和输出。
  • off - 隐藏命令并且只显示输出。
  • message - 要打印的文本。

如果你在没有任何参数或选项的情况下键入 echo,它将显示 echo 命令的状态(即打开或关闭)。在批处理文件中,它主要用于关闭命令的回显并仅显示输出,而 echo on 命令在调试批处理文件时很有用。

要检查 echo 命令或 echo 设置的状态,请在命令提示符下执行以下命令。

echo

输出:

检查 echo 状态

要关闭命令的回显,请在批处理文件的顶部添加 echo off

echo off
ipconfig
PAUSE

echo 关闭

输出:

echo 输出

但是,上述命令将在命令提示符中显示 echo off 行。要隐藏此行,请在 echo off 的开头添加@

@echo off
ipconfig
PAUSE

与 echo 命令一起关闭回显

输出:

关闭 echo 以及 echo 命令 - 输出

使用 echo 命令打印消息

echo 命令还可以在批处理文件中执行命令时显示消息。

@echo off
echo hello world
echo this is an example of how to print a message using the echo command.
cmd /k

使用 echo 命令打印消息

输出:

使用 echo 命令打印消息 - 输出

你还可以在同一个批处理文件中同时使用 echo onecho off。有时,你可能需要关闭某些命令的回显并打开其他命令的回显。

在这种情况下,你可以同时使用 echo onecho off,如下例所示。

@echo off
echo hello world
echo Here, the echoing is turned off i.e. no commands are shown.

@echo on
echo Hello
echo Here, the echoing is on i.e. commands are shown along with the output
cmd /k

在同一个批处理文件中打开和关闭回显

输出:

在同一个批处理文件中打开和关闭回显 - 输出

echo 批处理文件中的新行或空白行

要在批处理文件中回显新行或在单独的行中显示消息,在命令之间使用 echo.echo:来添加一个新的行。这两个命令的输出将是相同的。

示例 - 1:

@echo off
echo hello
echo:
echo world
echo this will add a blank line between hello and world
cmd /k

使用 echo 添加一个空行

示例 - 2:

@echo off
echo hello
echo.
echo world
echo this will add a blank line between hello and world
cmd /k

使用 echo 添加空行 - 方法 2

输出:

使用 echo 添加一个空行 - 输出

echo 文本到文件中

要将消息回显到文本文件中,请执行以下命令。

echo this line will be saved to a text file > testfile.txt

将文本回显到文件

你也可以使用 echo 命令创建一个空文件。要创建一个空文件,请执行以下命令。

echo. 2>testfile.txt

使用 echo 命令创建一个空文件

使用 echo 命令回显变量

要使用 echo 命令回显变量,请执行以下命令:

ECHO %OS%
cmd /k

回显一个变量

建议使用 echo:代替下面给出的空格,尽管它有一些限制。但是,两者的输出将相同。

ECHO:%OS%
cmd /k

这是因为如果你使用空格,它可能会以 echo onecho off 的形式执行命令,而不是显示变量的值。如下例所示,如果变量的值设置为关闭,使用空格会将其视为 echo off 并关闭回显。

相反,如果我们使用 echo:,它只会显示变量的值。

示例 - 1:

Set test=OFF
Echo %test%
echo echo is turned off instead of displaying the value
cmd /k

回显一组变量

输出:

回显一组变量 - 输出

示例 - 2:

Set test=OFF
Echo:%test%
echo the value is displayed

回显一组变量 - 方法 2

输出:

回显设置变量方法 2 - 输出

回显系统路径

要在新行中回显路径中的每个项目,请执行以下命令。

ECHO:%PATH:;= & ECHO:%

回声系统路径

输出:

echo 系统路径 - 输出

使用带有转义命令字符的 echo 命令

当你将 echo 命令与命令字符一起使用时,例如重定向(&)和管道(|onoff)字符,默认情况下,命令字符将位于 echo 之前命令。为了避免这种情况,我们需要在使用命令字符时使用转义字符(:^)。

分别在每个命令字符的命令字符前添加转义字符。

@echo off
ECHO Here, the escape character is used for the ^& character like Mickey ^& Mouse
ECHO file1 ^| file2 ^| file3

使用 echo 命令转义命令字符

输出:

使用 echo 命令转义命令字符 - 输出

结论

我们已经讨论了 echo 命令并涵盖了几乎所有内容以及示例。出于各种原因,它是一个非常有用的命令,用于批处理文件,如上面的示例中所述。

相关文章 - Batch Command