DOS批处理命令-注释
注释是每个程序中不可或缺的(不是对计算机来说,⽽是对我们这些程序员阅读代码来说)
语法:
①rem 这是批处理的注释命令,rem后⾯的内容全部是注释
例:rem 这是⼀⾏注释
②:: 批处理遇到以冒号“:”开头的⾏时(忽略冒号前的空格),并且第⼆个:不是标签的合法字符(把它换成\;.等等都⾏),它不被当作⼀个合法的标签。⾃⼰不能被执⾏,也不能被当做标签(goto语句⽆法跳转得到),也不会被执⾏,这样的⼀⾏不就跟注释⼀样么
例如下⾯代码:
echo on
rem this is a comment.
echo this is a comment.
:: this is a comment too.
echo this is a comment too.
运⾏结果:
F:\tmp>echo on
F:\tmp>rem this is a comment.
F:\tmp>echo this is a comment.
this is a comment.
F:\tmp>echo this is a comment too.
this is a comment too.
从【rem this is a comment.】这⼀句可以看出,rem这是⼀个命令,但是不做任何处理。
⽽语句【:: this is a comment too.】没有回显到屏幕上,说明这个不是⼀个语句,当然也不是⼀个有效的标签,这⾥我们就当做是注释。
::这个后⾯真的不是标签么?
我们接下来做⼀个验证
echo on
goto comment
echo a
echo b
echo c
echo d
::comment
echo the last
运⾏结果是:
F:\tmp>goto comment
指定されたバッチラベルが⾒つかりません - comment【制定的batch标签未到 - comment】
所以,::comment不是⼀个有效的标签,也不是⼀个有效的语句。哈哈,那这就是有效的注释了。
批处理中利⽤批处理的语法特性,还有⼀些其他的注释格式,个⼈不是很喜欢,仅仅是列出来,以望⼤家参考。
①goto语句和标签的使⽤,实现块⼉注释,就是跳过goto语句和标签之间的内容
echo off
goto comment
commentcommentcommentcomment
commentcommentcomment
commentcomment
comment
:comment
echo the last
执⾏结果
F:\tmp>echo off
the last
可见,goto语句和标签之间的内容被全部跳过,也不管那些内容是什么,些的对不对。
②%%百分号之间的内容都会帮当做注释的
echo on
echo a
echo %ssss%b
echo c
%%⾥⾯的ssss会当做注释给忽略掉,就跟不存在%ssss%这些字符⼀样。
这种注释你不是看着很眼熟呢?对的,这个本来是⽤来取变量值的,⽽由于我们注释的内容,⼀般是没有被赋值过,也就是说,这个变量的值是空的。所以,运⾏的时候,就忽略到中间的内容。
看看执⾏结果就知道了。
F:\tmp>echo on
批处理文件注释F:\tmp>echo a
a
F:\tmp>echo b
b
F:\tmp>echo c
c
不过,这个注释是不可以跨⾏的使⽤的,还有⼀点就是,单个出现的%会被忽略,刚才的那个语句如果写成%ssss%%b,黄⾊标记的%在执⾏的会被忽略,也就是⼀⾏中,如果最后⼀个%落单后,就会被寂寞的消失在代码的长河中。
rem 好了,别的也不废话了,这些注释已经够你⽤了,就不要再花⼼了。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。