Arithmetic Expressions
The let command performs integer arithmetic. bash provides a way to substitute integer values (for use as command arguments or in variables); base conversion is also possible.
Expression |
Meaning |
---|---|
(( expr )) |
Use the value of the enclosed arithmetic expression. |
Operators
bash uses arithmetic operators from the C programming language; the following list is in decreasing order of precedence. Use parentheses to override precedence.
Operator |
Meaning |
---|---|
- |
Unary minus |
! ~ |
Logical negation; binary inversion (one’s complement) |
* / % |
Multiplication; division; modulus (remainder) |
+ - |
Addition; subtraction |
<< >> |
Bitwise left shift; bitwise right shift |
<= >= |
Less than or equal to; greater than or equal to |
< > |
Less than; greater than |
= = != |
Equality; inequality (both evaluated left to right) |
& |
Bitwise AND |
^ |
Bitwise exclusive OR |
| |
Bitwise OR |
&& |
Logical AND |
|| |
Logical OR |
= |
Assign value |
+= -= |
Reassign after addition/subtraction |
*= /= %= |
Reassign after multiplication/division/remainder |
&= ^= |= |
Reassign after bitwise AND/XOR/OR |
<<= >>= |
Reassign after bitwise shift left/right |
Examples
See the let built-in command for more information and examples.
let "count=0" "i = i + 1"
Assign i and countlet "num % 2"; echo $?
Test for an even number
Get Linux in a Nutshell, Fourth Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.