Заработай на задачках

Иногда нужно сложить много чисел в каком-то столбце текстового файла. Хоть всё достаточно просто, но с awk обычно не сталкиваюсь, поэтому приходиться постоянно гуглить =( Размещаю тут для себя шпаргалку.

Вычислить сумму чисел столбца в файле Linux

На самом деле есть несколько способов. Наиболее простой и универсальный – подобный конвейер:

$ cat file_name | sed 's/,/./g' | awk '{sum += $5} END {print sum}'

Где:

  • cat file_name – вывод содержимого файла file_name.
  • sed ‘s/,/./g’ – замена символа запятой на точку, необходима для корректного сложения дробных чисел (в России принято целую часть отделять запятой, а awk работает на англоязычный манер и понимает только точку).
  • awk ‘{sum += $5} END {print sum}’ – суммирует пятый столбец и выводит результат.

Я буду очень рад комментарию!

Не переживайте, e-mail нигде не отображается. Обязательные поля помечены *

Навигация по записям