Calculating the sum of two integers (Numbers) in a shell script is pretty simple as in other programming languages. Bash shell provides a command-line utility called expr
to evaluate expressions. The latest version of the Bash shell also includes the functionality to evaluate expressions directly with the shell.
In this tutorial, we will discuss a few methods to calculate the sum of the two numbers in a bash script.
Bash – Adding Two Numbers
The expr
is the command-line utility used for evaluating mathematical expressions. Bash shell also supports evaluating the mathematical expressions directly.
Use the following syntax to calculate the sum of two integers in a shell script:
- Using expr command with quotes
sum=`expr $num1 + $num2`
- Use expr command inclosed with brackets and start with dollar symbol.
sum=$(expr $num1 + $num2)
- This is my preferred way to directly with the shell.
sum=$(($num1 + $num2))
In the next few examples, we will discuss calculating the sum of numbers directly with a shell. You can also choose expr command to give the syntax above.
Calculate Sum in Shell Script
Bash shell also evaluates the mathematical expressions directly. You just need to write the expressions enclosed in double brackets with a dollar like $((...))
.
Write an example shell script to initialize two numeric variables. Then perform an addition operation on both values and store results in the third variable.
1 2 3 4 5 6 7 8 9 10 | #!/bin/bash # Calculate the sum of two integers with pre initialize values # in a shell script a=10 b=20 sum=$(( $a + $b )) echo "Sum is: $sum" |
Output:
Sum is: 30
Calculate Sum with Command Line Arguments
In this second example, the shell script reads two numbers as command line parameters and performs the addition operation.
1 2 3 4 5 6 7 | #!/bin/bash # Calculate the sum via command-line arguments # $1 and $2 refers to the first and second argument passed as command-line arguments sum=$(( $1 + $2 )) echo "Sum is: $sum" |
Let’s execute this script is a shell
./sum.sh 12 14
# Executing script Sum is: 26
Calculate Sum with Run Time Input
Here is another example of a shell script, which takes input from the user at run time. Then calculate the sum of given numbers and store to a variable and show the results.
1 2 3 4 5 6 7 8 9 | #!/bin/bash # Take input from user and calculate sum. read -p "Enter first number: " num1 read -p "Enter second number: " num2 sum=$(( $num1 + $num2 )) echo "Sum is: $sum" |
Output:
Enter first number: 12 Enter second number: 15 Sum is: 27
Conclusion
In conclusion, we have explored different methodologies to handle a fundamental yet crucial aspect of programming—calculating the sum of two integers—in the context of Bash shell scripting. This knowledge is fundamental in the realm of shell scripting, which offers a powerful way to automate tasks, and the techniques covered here form the building blocks for more complex script-based operations.
4 Comments
How to add two float value using shell script
Bro use this header file at the top of your code
#!/bin/bash
code :
echo -n “enter the num1 ==> ”
read num1
echo -n “enter the num2 ==> ”
read num2
sum =$(( $num1 + $num2 ))
echo “the sum of $num1 and $num2 is ==> $sum”
i have written this code but it shows me some errors so can you help me ?
error :
enter the num1 ==> 10
enter the num2 ==> 20
sum: ‘=30’: No such file or directory
the sum of 10 and 20 is ==>
Hi Dixit,
Remove space after “sum variable”
The full script should be