There are two ways we can have the shell evaluate an expression. Either using `$((expression))`

syntax or the `expr`

command.

The former does not require proper spacing, while the latter does.

```
$ echo $((2+3))
5
$ expr 2 + 3
5
```

Arithmetic expasion only supports integer values and no decimals.

```
$ expr 2.3 + 2
expr: not a decimal number: '2.3'
```

Here are a list of arithmetic operators.

- ++ --
- Increment, Decrement
- + -
- Unary plus and minus
- * / %
- Multiplication, division and remainder
- == !=
- Equal and not equal
- ! && ||
- Logical negation, AND, and OR
- << >>
- Bit-shift left and right
- ~ & ^ |
- Bitwise negation, AND, exclusive OR, and OR
- \= += -= *= /= %=
- Assignment operators
- &= ^- <<= >>= |=
- Bitwise assignment operators

It's important to avoid using the `=`

symbol when comparing numerals. The `=`

looks for *string* equality, not numeric equality. Thus, when working with arithmetic equations, be sure to use `-eq`

instead.

```
$ [ 1 = 1 ]; echo $?
0
$ [ 092 = 92 ]; echo $?
1
$ [ 092 -eq 92 ]; echo $?
0
```

Here is a list of more comparison tests we can use to compare two numbers. Be sure to *not* use canonical notations such as `>`

or `<`

!

- -eq
- Equal to
- -ne
- Not equal to
- -lt
- Less than
- -gt
- Greater than
- -le
- Less than or equal to
- -ge
- Greater than or equal to

```
$ [ 92 > 32 ]; echo $?
0 # Looks good...(but wrong)
$ [ 92 < 32 ]; echo $?
0 # Wrong
$ [ 92 -gt 32 ]; echo $?
0 # There we go!
```

Stretch out your back and relieve your back muscles with inversion therapy. This device counteracts the forces of gravity on the body by decompressing and elongating the spine. By using this product just ten minutes a day, you can be well on your way to improved circulation and posture while relieving muscle aches, back pain and stress.

$$ Check price(1,700+ reviews)

This book approaches system administration in a practical way and is an invaluable reference for both new administrators and experienced professionals. It details best practices for every facet of system administration, including storage management, network design and administration, email, web hosting, scripting, and much more.

$ Check price(142+ reviews)

Ad