Issue
I have a list of numbers like this:
28
57
87
116
145
176
204
233
And I need to transform it to ranges, with names, and basically, each range corresponds to the 1st number up to the next number -1. like this:
type, range1=28-56
type, range2=57-86
type, range3=87-115
type, range4=116-144
type, range5=145-175
type, range6=176-203
type, range7=204-232
Any ideas on how to?
Solution
You may use this awk
:
awk 'p{printf "type, range%d=%d-%d\n", ++r, p, $1-1} {p=$1}' file
type, range1=28-56
type, range2=57-86
type, range3=87-115
type, range4=116-144
type, range5=145-175
type, range6=176-203
type, range7=204-232
Answered By - anubhava