Как итеративно разделить элементы столбца на одноэлементный элемент в другом столбце?
Например, ввод:
2 2
2.2
4
44
Ожидаемый результат:
1
1.1
2
22
Стандартное деление awk '{print $1/$2}' Input > Output
не работает (так как перебирает все несуществующие $2
элементы)
решение1
Чтобы получить делитель, вам нужно рассмотреть значение только в первой строке второго столбца. FNR
Для этого можно использовать. В awk FNR
ссылается на номер записи (фактически номер строки) в текущем файле. Сохраните делитель, прочитав первую строку второго столбца и разделив элементы в первом столбце на сохраненное значение.
awk 'FNR==1 {d=$2} {print $1/d}' Input > Output