bat批处理文件代码中有@echo off
这样的语句,@echo off
是什么意思?在bat中扮演着什么作用呢?
A:
@echo off
的意思是在批处理运行命令的时候不会一条一条的显示执行的命令,与之相匹配的还有@echo on
。
@echo off
与@echo on
前者为关闭回显,后者为打开回显
当不想批处理文件中的命令一行一行在DOS中显示出来时(因为全部显示出来的话看起来会变得很杂乱),可以使用@echo off,将其放于程序的最上方就行了。
以下是示例代码:
c++
@echo off
echo This text will not be displayed.
set /p var="Enter your name: "
echo Hello, %var%!
echo end
pause
这是一个Windows批处理脚本。 脚本的功能是:
- 首先关闭命令回显(@echo off)
- 输出一条不会被显示的消息(echo This text will not be displayed.)
- 提示用户输入他们的名字(set /p var='Enter your name: '),并存储在变量%var%中
- 它会输出一条问候消息(echo Hello, %var%!),并输出'end'
- 'pause'命令会使脚本暂停,等待用户按任意键继续。
@echo off指令
@echo off执行结果
@echo on指令
@echo off执行结果
由以上可以看出:
@echo off
表示执行了这条命令后关闭所有命令(包括本身这条命令)的回显。@的作用就是关闭紧跟其后的一条命令的回显
另外:
echo off命令则表示关闭其他所有命令(不包括本身这条命令)的回显;
pause也是一条命令,作用就是使程序暂停,也就是输出"请按任意键继续..."的原因;
@echo off执行以后,后面所有的命令均不显示,包括本条命令;
echo off执行以后,后面所有的命令均不显示,但本条命令是显示的;
注释的话用::
至此。