Book HomeLinux in a NutshellSearch this book

7.5. 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.

7.5.1. 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

7.5.2. Examples

See the let built-in command for more information and examples.

let "count=0" "i = i + 1"   Assign i and count
let "num % 2"               Test for an even number



Library Navigation Links

Copyright © 2001 O'Reilly & Associates. All rights reserved.