Arithmetic Expressions
The let command performs arithmetic. Bash is restricted to integer arithmetic. The shell provides a way to substitute arithmetic values (for use as command arguments or in variables); base conversion is also possible:
| Use the value of the enclosed arithmetic expression. |
| Interpret integer
n in numeric base B. For
example, |
Operators
The shell uses arithmetic operators from the C programming language, in decreasing order of precedence.
Operator | Description |
| Auto-increment and auto-decrement, both prefix and postfix |
| Unary plus and minus |
| Logical negation and binary inversion (one’s complement) |
| Exponentiation[a] |
| Multiplication, division, modulus (remainder) |
| Addition, subtraction |
| Bitwise left shift, bitwise right shift |
| Less than, less than or equal to, greater than, greater than or equal to |
| Equality, inequality (both evaluated left to right) |
| Bitwise AND |
| Bitwise exclusive OR |
| Bitwise OR |
| Logical AND (short circuit) |
| Logical OR (short circuit) |
| Inline conditional evaluation |
| |
| |
| Assignment |
| |
| Sequential expression evaluation |
[a] The | |
Examples
let "count=0" "i = i + 1" Assign values to i and count let "num % 2" Exit successfully if num is even (( percent >= 0 && \ percent <= 100 )) Test the range of a value ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access