在批处理脚本的开头,我看到了以下命令:
@echo %off
令我惊讶的是,它具有以下相同的效果:
@echo off
'%'前缀的作用是什么?
最佳答案
我从没看过它在cmd控制台中不起作用-仅在.bat脚本中起作用。但是我有一个猜测。
在@echo off
。区别在于,在.bat脚本中,百分号需要加倍以表示文字echo on
字符串字符,而在cmd控制台中则不需要。结果是,cmd控制台中的%
导致字符串@echo %off
回显到stdout。
考虑到这一点,我猜测作者打算使用此hack来避免将脚本复制粘贴到cmd控制台窗口而不是按预期的.bat脚本的用户遇到的问题。添加%off
后,该命令在控制台中已被中止,但从.bat脚本运行时仍可达到其预期的效果。如果没有%
,则在完成所有说明后,控制台似乎会挂起。
关于batch-file - “@echo off”和“@echo%off”之间的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38307449/