批处理BAT脚本中set和if命令的使用.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

第PAGE2页共NUMPAGES18页

批处理BAT

脚本中set和if命令的使用

在线视频分享约定

专心听就行了,不用着急做笔记。视频和文档会放到网上供大家免费下载。

请不要使用音箱等外放设备,以免有回声影响其他人,最好使用耳机。

理论知识介绍完之后,随机从论坛上找几个帖子现场演示分析问题、解决问题的过程。

内容概要

?

?

s

et

?

?

学运算

?

读取输入

?

字符串截取

?

字符

串替换

?

i

f

判断上一条命令的退出代码

判断文件是否存在

字符串比较★

使用

第PAGE2页共NUMPAGES18页

使用

第PAGE2页共NUMPAGES18页

set命令进行赋值

注意事项

?

?

?等号两边不要有空格

C:\setstr=BatHome

C:\echo%str%

BatHome

C:\setstr=BatHome

C:\echo%str%

%str%

?变量值包含特殊字符需用双引号

C:\setstr=BatHome

C:\echo%str%

BatHome

C:\setstr=BatHome

Home不是内部或外部命令,也

不是可运行的程序或批处理文件。

C:\echo%str%

Bat

变量值设置为空可以清空变量值,实现变量初始化。语法可行但不推荐使用:

避免使用系统环境变量同名的自定义变量,例如:??使用连等把多个变量赋值成数字set/ax=y=100path,date,errorlevel等??逗号分隔把多个变量赋值成数字set/ax=1,y=2

set/a命令进行数学运算(1)

?等号右侧的变量可以省略百分号

C:\setx=1

C:\sety=2

C:\set/an=%x%+%y%

3

C:\setx=1

C:\sety=2

C:\set/an=x+y

3

?八进制和十六进制转换成十进制很简单

C:\set/a01210

C:\set/a0xA10

??BAT文件里面进行“取余”操作的时候需要使用两个百分号

@echooffset/an=3%%2echo%n%pause

?逻辑运算的特殊字符需要使用双引号

@echooffset/am=110set/an=110echo%m%%n%pause

set/a命令进行数学运算(2)

?不支持直接计算超大数(例如磁盘空间的计算)

C:\set/an=2147483646+12147483647

C:\set/an=2147483647+1-2147483648

C:\set/an=2147483648+1

无效数字。数字精确度限为32位。

C:\set/an=-2147483646-1-2147483647

C:\set/an=-2147483647-1-2147483648

C:\set/an=-2147483648-1

无效数字。数字精确度限为32位。

?不支持直接计算浮点数

批处理通过自己编写算法实现浮点计算

/thread-3322-1-1.html/thread-3372-1-1.html

?合理使用位运算可以简化代码、提高效率

位运算相关概念及批处理演示

/thread-1844-1-1.html/thread-5884-1-1.html

?对于超大数、浮点数的计算,BAT调用VBS或PowerShell是相对简单的解决方法。

?截取日期、时间之后进行set/a计算时08和09会被看做非法八进制数字,参考:/thread-29062-1-1.html/thread-29253-1-1.html

set/p命令读取输入

?交互获取用户输入

@echooff

set/pinput=请输入一个字符串:echo,%input%pause

?读取文件的第一行内容

C:\echoBatHome1.txt

C:\set/pinput=1.txt

C:\echo%input%

BatHome

?输出字符串之后不产生换行

@echooff

for%%iin(bathome)do(echo,%%i

)pause

@echooff

for%%iin(bathome)do(set/p=%%inul

)pause

批处理光标回退(非cls清屏)动画效果演示

/viewthread.php?tid=11266#pid159704

set命令进行字符串截取

原始字符串

字符串截取setsub=%str:~x,y%

结果

setstr=12345

文档评论(0)

MAX知识点 + 关注
实名认证
文档贡献者

资料收集达人

版权声明书
用户编号:8053033065000020

1亿VIP精品文档

相关文档