【问题标题】:Why I am getting "Echo is on" when trying to print a variable in batch为什么在尝试批量打印变量时出现“Echo is on”
【发布时间】:2012-09-01 23:10:02
【问题描述】:

我想执行一个简单的批处理文件脚本:

echo %1
set var = %1
echo %var%

当我在 XP 中运行它时,它给了我预期的输出,但是当我在 Vista 或 Windows 7 中运行它时,我在尝试打印 (echo) 值时得到“Echo is On”。

下面是程序的输出:

G:\2012>abc.bat 1

G:\2012>echo 1
1

G:\2012>set var = 1

G:\2012>echo
ECHO is on.

G:\2012>

【问题讨论】:

  • set var=%1 pause output:= C:\>set var= C:\Users\vpatel\Desktop>pause 按任意键继续。 . .不要求用户输入

标签: windows windows-7 batch-file dos


【解决方案1】:

去掉集合表达式中的空格。等号 (=) 的两边可以而且不应该有空格

set var=%1

顺便说一句:我通常以关闭@echo 开始我的所有批处理文件,并以打开@echo 结束它们,这样我可以避免将代码与批处理文件的输出混合。它只是让你的批处理文件输出更好更干净。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-04-17
    • 2016-10-21
    • 1970-01-01
    • 2019-08-03
    • 1970-01-01
    • 2016-09-01
    • 2011-06-25
    • 2014-09-23
    相关资源
    最近更新 更多