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 好了,别的也不废话了,这些注释已经够你用了,就不要再花心了。
DOS批处理命令-注释的更多相关文章
- DOS批处理命令递归删除给定的文件(夹),兼VC工程清理小工具
使用dos批处理命令递归删除指定的文件(夹): (下面内容针对清理VC工程!自己按说明任意修改) 2014-06-10修改:删除前增加了[y,n]询问: echo off rem 递归删除当前文件下指 ...
- DOS批处理命令判断操作系统版本、执行各版本对应语句
DOS批处理命令判断操作系统版本.执行各版本对应语句 昨天在家里试用 netsh interface ip set address 这些命令更改上网IP.DNS.网关等,今天将那些代码拿来办公室 ...
- DOS批处理命令-if语句
IF语句是批处理中执行的条件分歧处理. 批处理中,IF分歧的写法有好几种,接下来,我们来一个一个的分析IF语法的结构. 1.IF [NOT] ERRORLEVEL 番号 批处理命令 当ERRORLEV ...
- DOS批处理命令-几个固定名称的变量
批处理中有一些变量的变量名称是固定的,具有特定的意义,接下来,我们来看看这些有特定意义的变量到底有什么意义. 1.%CD% 当前路径的路径名[盘符 + 路径] - 現在のディレクトリ文字列に ...
- DOS批处理命令-@命令
@命令是一个禁止当前语句回显的简单命令. 语法: @[command].[command]是要屏蔽的批处理命令 例如执行包含以下内容的bat文件 echo on @echo ------- @echo ...
- cocos2d-x教程3:用php或DOS批处理命令来转换文件和解压缩zip
在cocos2d-x使用中,须要不停的转换文件和压缩或解压文件.假设全人工来做,太麻烦了,且easy出错. 我如今把一些用的到批处理贴出来,供大家使用 自己主动把dat文件按数字排序重命名gz.DOS ...
- DOS 批处理命令For循环命令详解
for命令是一种对一系列对象依次循环执行同一个或多个命令的在命令行或批处理中运行的命令,结合一些Windows管理中的程序后,其处理功能强大.应用灵活方便程度令人刮目相看 for命令是一种对一系列 ...
- DOS批处理命令
1.echo的用法(echo /? --查看帮助) echo off/on 打开关闭回显功能(@echo off 关闭回显并且不需要回显 echo 命令) echo, 显示空行(也可以是; . ...
- DOS批处理命令-for语句
for是为了循环执行一系列命令而执行的命令语句. for要处理的内容不同,语法结构稍有不同.下面就各种情形来分别 1.基本的语法:FOR %変数 IN (set) DO 命令 [参数] 语法内容解析: ...
随机推荐
- ElasticSearch中文分词(IK)
ElasticSearch常用的很受欢迎的是IK,这里稍微介绍下安装过程及测试过程. 1.ElasticSearch官方分词 自带的中文分词器很弱,可以体检下: [zsz@VS-zsz ~]$ c ...
- wikioi 3116 高精度练习之加法
题目描述 Description 给出两个正整数A和B,计算A+B的值.保证A和B的位数不超过500位. 输入描述 Input Description 读入两个用空格隔开的正整数 输出描述 Outpu ...
- javascript --学习this
this 在一般的强类型语言中,this指向的是这个对象本身,可在javascript中 this的取值是执行上下文环境的一部分 其实这个this并不是很难立即,只要记住二点就可以了 那就是谁call ...
- too many automatic redirections were attempted
用HttpClient时发现一下页面跳转现象. 页面A要求授权自动跳转到页面B, 页面B进行了授权,在HTTP Header里要求SetCookie并跳转到页面A. 再次请求页面A的时候没有带上此Co ...
- ADO.NET 快速入门(三):从存储过程获取输出参数
一些存储过程通过参数返回值.当参数在SQL表达式或者存储过程中被定义为“输出”,参数值会返回给调用者.返回值存储在 OleDbCommand 或者 SqlCommand 对象的参数集合的参数里. ...
- TcxDBLookupCombobox 级联时第二级不显示正确内容的处理方法
在使用两个级联的 TcxDBLookupCombobox 时,会出现这种情况:当第一级的内容变更后,第二级的控件在界面上显示的文本不变化,即使数据集已经通过 Properites.OnChange 事 ...
- mbstowcs_s实现wchar_t转成char
把char*转换为wchar_t* 用stdlib.h中的mbstowcs_s函数,可以通过下面的例子了解其用法: char*CStr = "string to convert"; ...
- OpenGL 3:画圆
这次使用OpenGL画圆,而且中间画一个实心的五角星. 1. 画实心五角: 由于之前使用Polygen画会出现故障,或许是各个GPU硬件也会不一样的,所以使用Polygen画实心五角星并不可靠: 所以 ...
- iOS开发——动画篇Swift篇&动画效果的实现
Swift - 动画效果的实现 在iOS中,实现动画有两种方法.一个是统一的animateWithDuration,另一个是组合出现的beginAnimations和commitAnimation ...
- Error creating bean with name 'menuController': Injection of autowired dependency……
出现了一大串错误 Error creating bean with name 'userController': Injection of autowired dependencies failed. ...