arithmetic in bash
part of compound expression .
counter=0
(( counter + 1))
counter=$((counter+1))
echo One plus One is $((1+1))
echo One plus One is 2
(( arithmetic expression ))
# or to capture the output
$((arithmetic_expression))
# or
let arithmetic_expression [arithmetic_expression, ...]
where let is the let command
If the value of the expression is:
If the variable has its integer attribute set (see Bash - Declare (Variable declaration and attribute)), then value is evaluated as an arithmetic expression even if the $((...)) expansion is not used.
In the context where an assignment statement is assigning a value to a shell variable, the += operator can be used to append to or add to the variable’s previous value. When += is applied to a variable for which the integer attribute has been set, value is evaluated as an arithmetic expression and added to the variable’s current value, which is also evaluated.
if (( a > b )); then
...
fi
if [ "$a" -gt "$b" ]; then
...
fi