批处理脚本 - 运算符

运算符是告诉编译器执行特定数学或逻辑操作的符号。

在批处理脚本中,可以使用以下类型的运算符。

  • 算术运算符
  • 关系运算符
  • 逻辑运算符
  • 赋值运算符
  • 按位运算符

算术运算符

批处理脚本语言支持任何语言的普通算术运算符。 以下是可用的算术运算符。

显示示例

运算符 描述 示例
+ 两个操作数相加 1 + 2 将给出 3
从第一个操作数中减去第二个操作数 2 − 1 将给出 1
* 两个操作数相乘 2 * 2 将给出 4
/ 分子除以分母 3 / 2 将给出 1.5
% 模数运算符和整数/浮点除法后的余数 3 % 2 将给出 1

关系运算符

关系运算符允许对对象进行比较。 以下是可用的关系运算符。

显示示例

运算符 描述 示例
EQU 测试两个对象之间的相等性 2 EQU 2 将给出 true
NEQ 测试两个对象之间的差异 3 NEQ 2 将给出 true
LSS 检查左侧对象是否小于右侧操作数 2 LSS 3 将给出 true
LEQ 检查左侧对象是否小于或等于右侧操作数 2 LEQ 3 将给出 true
GTR 检查左侧对象是否大于右侧操作数 3 GTR 2 将给出 true
GEQ 检查左侧对象是否大于或等于右侧操作数 3 GEQ 2 将给出 true

逻辑运算符

逻辑运算符用于计算布尔表达式。 以下是可用的逻辑运算符。

批处理语言配备了一整套布尔逻辑运算符,如 AND、OR、XOR,但仅适用于二进制数。 也没有任何 TRUE 或 FALSE 值。 可用于条件的唯一逻辑运算符是 NOT 运算符。

显示示例

运算符 描述
AND 这是逻辑"与"运算符
OR 这是逻辑"或"运算符
NOT 这是逻辑"非"运算符

赋值运算符

批处理脚本语言还提供赋值运算符。 以下是可用的赋值运算符。

显示示例

运算符 描述 示例
+= 这会将右操作数添加到左操作数,并将结果分配给左操作数

Set /A a = 5

a += 3

输出将为 8

-= 从左操作数中减去右操作数,并将结果赋给左操作数

Set /A a = 5

a -= 3

输出将为 2

*= 将右操作数与左操作数相乘,并将结果赋给左操作数

Set /A a = 5

a *= 3

输出将为 15

/= 将左操作数与右操作数相除,并将结果赋给左操作数

Set /A a = 6

a/ = 3

输出将为 2

%= 这使用两个操作数取模并将结果分配给左侧操作数

Set /A a = 5

a% = 3

输出将为 2

按位运算符

按位运算符也可以在批处理脚本中使用。 以下是可用的运算符。

显示示例

运算符 描述
& 这是按位"与"运算符
| 这是按位"或"运算符
^ 这是按位"异或"或异或运算符

以下是展示这些运算符的真值表。

p q p & q p | q p ^ q
0 0 0 0 0
0 1 0 1 1
1 1 1 1 0
1 0 0 1 1