![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-04 19:41 |
共 48,038 主题排行 / 350,123 发帖 / 今日 0 篇 / 48,251 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 请教 set /a 的用法 |
| 可打印版本 707 / 1 |
| 第1楼 371770923 | 发表于 2007-06-02 09:00 |
| 初级用户 发帖 19 积分 50 | |
|
请教 set /a 的用法 以下是在命令行输入set /? > set.txt 生成的文件内容
有一段无法理解 请问 SET /A expression 这里的 expression 是什么意思 ( A 命令行开关指定等号右边的字符串为被评估的数字表达式 )这里都看不到= 为什么会说等号右边呢? 环境变量应该加在哪里,? 运算符号该怎么应用呢? (可以的话写个实例,并付详细注释) 谢谢!!!!!!!!!! 如果命令扩展名被启用,SET 会如下改变: 可仅用一个变量激活 SET 命令,等号或值不显示所有前缀匹配 SET 命令已使用的名称的所有变量的值。例如: SET P 会显示所有以字母 P 打头的变量 如果在当前环境中找不到该变量名称,SET 命令将把 ERRORLEVEL 设置成 1。 SET 命令不允许变量名含有等号。 在 SET 命令中添加了两个新命令行开关: SET /A expression SET /P variable=[promptString] /A 命令行开关指定等号右边的字符串为被评估的数字表达式。该表达式 评估器很简单并以递减的优先权顺序支持下列操作: () - 分组 ! ~ - - 一元运算符 * / % - 算数运算符 + - - 算数运算符 << >> - 逻辑移位 - 按位“与” ^ - 按位“异” | - 按位“或” = *= /= %= += -= - 赋值 &= ^= |= <<= >>= , - 表达式分隔符 如果您使用任何逻辑或取余操作符, 您需要将表达式字符串用 引号扩起来。在表达式中的任何非数字字符串键作为环境变量 名称,这些环境变量名称的值已在使用前转换成数字。如果指定 了一个环境变量名称,但未在当前环境中定义,那么值将被定为 零。这使您可以使用环境变量值做计算而不用键入那些 % 符号 来得到它们的值。如果 SET /A 在命令脚本外的命令行执行的, 那么它显示该表达式的最后值。该分配的操作符在分配的操作符 左边需要一个环境变量名称。除十六进制有 0x 前缀, 八进制 有 0 前缀的,数字值为十进位数字。因此, 0x12 与 18 和 022 相同。请注意八进制公式可能很容易搞混: 08 和 09 是无效的数字, 因为 8 和 9 不是有效的八进制位数。 |
|
| 第2楼 bjsh | 发表于 2007-06-02 11:00 |
| 银牌会员 发帖 621 积分 2,000 | |
|
expression
即表达式的意思 set /a p=1+1 echo %p% 至于那些运算符号; 可以参考: http://www.cn-dos.net/forum/viewthread.php?tid=30985&fpage=3 CMD/DOS下符号的作用参考 |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |