我想知道如上所述为什么我们使用@Echo off / on而不是Echo off / on。这有什么原因或只是为了可见性?根据这一点,它似乎无法在视觉上产生影响:
C:\Users\Jack> Echo Hello World!!!
Hello World!!!
C:\Users\Jack> Echo off
Echo Hello World!!!
Hello World!!!
Echo on
C:\Users\Jack> Echo Hello World!!!
Hello World!!!
C:\Users\Jack> @Echo off
Echo Hello World!!!
Hello World!!!
@Echo on
C:\Users\Jack> Echo Hello World!!!
Hello World!!!
答案 0 :(得分:4)
@
从输出中隐藏命令本身。如果您不使用它,那么就无法完全从批处理文件中删除命令回声,您总是将第一行作为输出。
答案 1 :(得分:2)
从批处理文件中,如果当前处于回显状态,则@echo off
将不会被回显,而echo off
将会:
C:\working\test>type test.cmd
echo off
echo hello
C:\working\test>test
C:\working\test>echo off
hello
如果当前关闭回声,则@echo on
和echo on
之间没有区别;前者可能是出于习惯而使用,或者因为程序员不希望行为取决于当前是否开启回声。
答案 2 :(得分:-1)
使用@
隐藏命令
例如:
echo off
echo hello
pause
结果:
C:\Users\Will Smith Yaaaa\Desktop>echo off
hello
Press any key to continue . . .
相反,如果您使用@echo off
:
程序:
@echo off
echo hello
pause
结果:
hello
Press any key to continue . . .
实际上可以用@code
代替:
@echo hello
@pause
结果:
hello
Press any key to continue . . .