Иногда нужно сложить много чисел в каком-то столбце текстового файла. Хоть всё достаточно просто, но с awk обычно не сталкиваюсь, поэтому приходиться постоянно гуглить =( Размещаю тут для себя шпаргалку.
Вычислить сумму чисел столбца в файле Linux
На самом деле есть несколько способов. Наиболее простой и универсальный – подобный конвейер:
$ cat file_name | sed 's/,/./g' | awk ' END '
Где:
- cat file_name – вывод содержимого файла file_name.
- sed ‘s/,/./g’ – замена символа запятой на точку, необходима для корректного сложения дробных чисел (в России принято целую часть отделять запятой, а awk работает на англоязычный манер и понимает только точку).
- awk ‘ END ’ – суммирует пятый столбец и выводит результат.