Interview Scripting (Bash, Groovy)

How do you use awk to sum or average a column? [Advanced]

Answer

To sum or average a column in awk, accumulate the numeric field in a variable and print the result in the END block. For average, divide by the count of records included.

Technical explanation

awk variables are initialized to zero or empty string automatically.

Use conditions to skip headers, empty rows, or nonnumeric values.

END runs after all records have been processed, making it ideal for totals and summaries.

Hands-on example

# Sum column 3, skipping header.

awk -F, 'NR > 1 {sum += $3} END {print sum}' metrics.csv

# Average column 2 when it is non-empty.

awk -F, 'NR > 1 && $2 != "" {sum += $2; n++} END {if (n) print sum/n}' metrics.csv

Preparing for an interview?

Check how well your resume matches the role with our free resume checker— match score, ATS check, and the skills you're missing.

More Scripting (Bash, Groovy) interview questions

← All Scripting (Bash, Groovy) questions