Bash Addition

In Bash scripting, you can perform arithmetic addition using arithmetic expansion, the expr command, and the let command.

In this tutorial, we’ll guide you through the different methods of performing addition in Bash with detailed examples and scenarios.

For a quick overview of the Arithmetic Operations in Bash, you may refer Bash Arithmetic Operations.


Syntax for Addition in Bash

The syntax for performing addition in Bash can vary depending on the method used. Here are the common approaches:

Addition using Arithmetic Expansion:

</>
Copy
$((a + b))

Addition using expr:

</>
Copy
expr a + b

Addition using let:

</>
Copy
let sum=a+b

Addition using bc (for floating-point addition):

</>
Copy
echo "a + b" | bc

Examples of Addition in Bash

Let’s go through different examples to see how addition can be performed using these methods.


1. Bash Addition Using Arithmetic Expansion

Arithmetic expansion is the simplest and most common way to perform addition in Bash. It uses the $((...)) syntax to evaluate the expression.

example.sh

</>
Copy
#!/bin/bash

# Define two numbers
num1=10
num2=20

# Perform addition
sum=$((num1 + num2))

# Display the result
echo "The sum of $num1 and $num2 is $sum."

Output

Bash Addition Using Arithmetic Expansion

In this example, the addition is performed using $((num1 + num2)), and the result is stored in the variable sum.


2. Bash Addition Using expr

The expr command is another way to perform arithmetic operations in Bash. It is an older method but still commonly used.

example.sh

</>
Copy
#!/bin/bash

# Define two numbers
num1=15
num2=25

# Perform addition using expr
sum=$(expr $num1 + $num2)

# Display the result
echo "The sum of $num1 and $num2 using expr is $sum."

Output

Bash Addition Using expr

In this example, we use expr to add num1 and num2. Note that the spaces around the + operator are required when using expr.


3. Bash Addition Using let

The let command allows you to perform arithmetic operations without using $((...)). It is a simple and efficient method for integer addition.

example.sh

</>
Copy
#!/bin/bash

# Define two numbers
num1=5
num2=7

# Perform addition using let
let sum=num1+num2

# Display the result
echo "The sum of $num1 and $num2 using let is $sum."

Output

Bash Addition Using let

In this example, the let command performs the addition without requiring parentheses or spaces.


4. Bash Addition of Floating-Point Numbers Using bc

Bash does not natively support floating-point arithmetic. However, you can use the bc command-line calculator for precise addition of floating-point numbers.

example.sh

</>
Copy
#!/bin/bash

# Define two floating-point numbers
num1=5.5
num2=2.3

# Perform addition using bc
sum=$(echo "$num1 + $num2" | bc)

# Display the result
echo "The sum of $num1 and $num2 using bc is $sum."

Output

Bash Addition of Floating-Point Numbers Using bc

In this example, bc handles floating-point arithmetic, allowing us to accurately sum num1 and num2.


Best Practices for Addition in Bash

  • Use $((...)) for simple integer addition as it is the most efficient method.
  • Prefer bc for floating-point arithmetic to ensure accurate results.
  • Always quote variables used in arithmetic expressions to prevent issues with special characters or spaces.
  • Validate user inputs before performing arithmetic operations to avoid errors or unexpected behavior.