📜  zsh 算术 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:35:50.318000             🧑  作者: Mango

Zsh 算术表达式 - Shell Bash

在Shell脚本中进行数学运算一般使用expr命令或$((...))语句。但zsh提供了更为强大的算术表达式语法。本文将介绍如何在zsh中使用算术表达式。

基本使用

在zsh中输入算术表达式,可以使用$((...))语法:

$ echo $((2 + 3))
5

注意,表达式要包含在两个括号之间,并且括号之间没有空格。

表达式中可以使用的运算符有:+-*/%<<>>~&^|。其中~表示按位取反,&表示按位与,^表示按位异或,|表示按位或。

$ echo $((5 * 3 + 2))
17

$ echo $((1 << 2))
4

$ echo $((~0x10))
-17
变量与常量

可以在表达式中使用变量和常量。常量直接输入即可,变量要加上$符号。

$ a=5
$ echo $((a + 3))
8

$ echo $((0xff))
255
数组

zsh中可以使用数组。在表达式中使用数组元素,需要使用[]符号:

$ array=(1 2 3 4 5)
$ echo $((array[1] + array[3]))
6
函数和命令

可以在表达式中使用函数和Shell命令。函数和命令需要用反引号或$()括起来。

$ function add() { echo $(($1 + $2)) }
$ echo $((`add 2 3`))
5

$ echo $((`echo 5` * 3))
15
小结

zsh提供了更为强大的算术表达式语法,可以方便地进行数学运算,同时也支持变量、数组、函数和命令的使用。使用$((...))语法来输入算术表达式,使用其中涉及的运算符来进行计算。