Bash: How to Calculate Sum After Reading File

Here’s a bash script that reads an input file and calculates the sum. A file containing a couple of records is an input for this script. The script reads this file using While (loop) and checks for a specific string; If found, further, it gets a substring of numbers for some calculation.

Bash script reading input file

Reading file and calcuate sum

  • The read – r command reads the file. The While loop reads till the end of the file. Added if logic to test the string.
  • The sed utility formats the input record as desired. When the matched string is received, it will then get a number (used substring concept). Then, the echo statement displays the calculated sum.

Input file


Script logic

The result would be the sum of app1 memory and app2 memory. It gives 10+20=30.

script logic with sed utility usage

What it does?

  • It replaces the ‘m’ that is found in the cpu. Also, it calculates the sum of the mem of app1 and app2 values.
  • The read -r line reads input. The file name <inputfile.txt works as an input to the While loop. The sed output, it writes to Output.txt file.
  • When the string matches to ‘mem’ it gets a number from it. This is later will use it to calculate the sum.
  • This is a tricky shell script and may ask in interviews.
  • The >> says it appends to output.txt file. If you use > each time it overwrites.


Here’s the output from this script. You can see a display of the sum. Also, you can see the output file details without ‘m’ for cpu value.

Output of sed utility in script

Heart-beat monitor

Related posts

Author: Srini

Experienced software developer. Skills in Development, Coding, Testing and Debugging. Good Data analytic skills (Data Warehousing and BI). Also skills in Mainframe.