DOS批处理高级程:第五章 set命令详解.docVIP

  • 5
  • 0
  • 约3.47万字
  • 约 10页
  • 2016-12-03 发布于河南
  • 举报

DOS批处理高级程:第五章 set命令详解.doc

DOS批处理高级程:第五章 set命令详解

在上一贴中我简单的介绍了一下SET设置自定义变量的作用,现在我来具体讲一下set的其他功能. 一、用set命令设置自定义变量 显示、设置或删除 cmd.exe 环境变量。 SET [variable=[string]] variable 指定环境变量名。 string 指定要指派给变量的一系列字符串。 要显示当前环境变量,键入不带参数的 SET。 SET 命令不允许变量名含有等号。 注意:以下用法将清除变量variable的值,使其变成未定义状态。 SET variable= 上面等号后面无任何符号,如果写成SET variable=,此时变量值并不为空,而是等于两个引号,即 例子:@echo off set var=我是值 echo %var% pause 复制代码 请看 set var=我是值 ,这就是BAT直接在批处理中设置变量的方法! set 是命令 var是变量名 =号右边的我是值是变量的值 在批处理中我们要引用这个变就把var变量名用两个%(百分号)扩起来,如%var% SET还可以提供一个交互界面,让用户自己输入变量的值,然后我们在来根据这个值来做相应操作,现在我就来说说SET的这种语法,只需要加一个/P参数就可以了! SET /P variable=[promptString] 例子: @echo off set /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=0812 set /a aa=1%aa%-10000 echo %aa% 复制代码 结果为:812 例: @echo off set /p input=请输入计算表达式: set /a var=%input% echo 计算结果:%input%=%var% pause 复制代码 上面的例子是龙卷风设计的,很好用哟,请看下面几个运算过程: 注意:DOS计算只能进行整数运算,精确到整数 请输入计算表达式:1+9+20+30-10 计算结果:1+9+20+30-10=50 请按任意键继续. . . 请输入计算表达式:10/3

文档评论(0)

1亿VIP精品文档

相关文档