while loops

AWK processes every line of your file, but what if you want to iterate over the fields of each line itself?

You can iterate over fields using a while loop when using AWK.

Assume we have the following file:

321 524 124
174 185 254
195 273 345 

Now let's iterate over the fields using a while loop.

$ awk '{
total = 0
i = 1
while (i < 4)
{
total += $i
i++
}
mean = total / 3
print "Mean value:",mean
}' myfile  

The while loop iterates over the fields; we get the mean value for every row and print it.

Get Mastering Linux Shell Scripting now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.