- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
DOS批处理高级教程精选合编(下)
?
?
?
?
第五章 set命令详解
很久没发贴了,今天来写点讲BAT的新手教学贴!
在上一贴中我简单的介绍了一下SET设置自定义变量的作用,现在我来具体讲一下set的其他功能.
?
一、用set命令设置自定义变量
显示、设置或删除 cmd.exe 环境变量。SET [variable=[string]]? variable? 指定环境变量名。? string??? 指定要指派给变量的一系列字符串。要显示当前环境变量,键入不带参数的 SET。SET 命令不允许变量名含有等号。
注意:以下用法将清除变量variable的值,使其变成未定义状态。SET variable=上面等号后面无任何符号,如果写成SET variable=,此时变量值并不为空,而是等于两个引号,即
例子:@echo offset var=我是值echo %var%pause
请看 set var=我是值 ,这就是BAT直接在批处理中设置变量的方法!set 是命令?? var是变量名? =号右边的我是值是变量的值在批处理中我们要引用这个变就把var变量名用两个%(百分号)扩起来,如%var%
SET还可以提供一个交互界面,让用户自己输入变量的值,然后我们在来根据这个值来做相应操作,现在我就来说说SET的这种语法,只需要加一个/P参数就可以了!SET /P variable=[promptString]
例子:@echo offset /p var=请输入变量的值:echo 您输入了 %var%? ~_~pause
set /p 是命令语法? var是变量名??? =号右边的请输入变量的值: ,这个是提示语,不是变量的值了!运行后,我们在提示语后面直接输入1,就会显示一行您输入了 1 ~_~
好了,先回顾到这,现在讲SET其他功能
使用set /?查看SET的帮助我们发现SET除了我上面讲的SET [variable=[string]]SET /P variable=[promptString]这两种语法外,还有如下几种语法:SET /A expression环境变量替换已如下增强:%PATH:str1=str2%%PATH:~10,5%%PATH:~-10%%PATH:~0,-2%
这机种语法有什么用处呢?下面我们来一个个讲解他们!
?
?
二、用set命令进行简单计算
语法:SET /A expression/A 命令行开关指定等号右边的字符串为被评估的数字表达式。该表达式评估器很简单并以递减的优先权顺序支持下列操作:??? ()????????????????? -分组??? ! ~ -?????????????? -一元运算符??? * / %?????????????? -算数运算符??? + -???????????????? -算数运算符??? ?????????????? -二进制逻辑移位??? ?????????????????? -二进制按位“与”??? ^?????????????????? -二进制按位“异”??? |?????????????????? -二进制按位“或”??? = *= /= %= += -=??? -算数赋值??? = ^= |= = =??? -二进制运算赋值??? ,?????????????????? -表达式分隔符
如果 SET /A 在命令脚本外的命令行执行的,那么它显示该表达式的最后值。除十六进制有 0x 前缀, 八进制有 0 前缀的,数字值为十进位数字。因此, 0x12 与 18 和 022相同。请注意八进制公式可能很容易搞混:?08 和 09 是无效的数字,因为 8 和 9 不是有效的八进制位数。
上面这些是系统帮助里的内容,看着是不是有点晕,没关系我来简单解释一下:set的/A参数就是让SET可以支持数学符号进行加减等一些数学运算!
注意:一般的运算常为十进制运算,如果数字字符串最左边为0,将被认为是八进制,从而出错。比如,0812之类的数字不能参与十进制运算,转换方法为:10812-10000
例:set aa=0812set /a aa=1%aa%-10000echo %aa%结果为:812
例:? @echo off? set /p input=请输入计算表达式:? set /a var=%input%? echo 计算结果:%input%=%var%? pause
上面的例子是龙卷风设计的,很好用哟,请看下面几个运算过程:注意:DOS计算只能进行整数运算,精确到整数
请输入计算表达式:1+9+20+30-10计算结果:1+9+20+3
您可能关注的文档
最近下载
- 露天矿山岩质边坡工程设计规范(TCSRME 009-2021).pdf VIP
- 精品解析:2024年高中化学奥林匹克北京地区预选赛化学试题(解析版).docx VIP
- 国际音标练习(共52张).ppt VIP
- 部编版语文一年级上册教案-表格式(全册).pdf VIP
- 射血分数保留的心力衰竭诊断与治疗中国专家共识2025要点 .pdf VIP
- 2024年一级注册计量师考试题目解析.docx VIP
- 《新生儿高氨血症诊断与治疗的专家共识》解读PPT课件.pptx VIP
- 初中语文讲座:《素养导向初中语文大单元教学》课件.pdf
- 2019年阅兵PPT课件教学课件.pptx VIP
- 2025杭州电力设备制造有限公司招聘70人(第二批)笔试模拟试题及答案解析.docx VIP
文档评论(0)