Используйте общий ресурс CIFS, смонтированный в fstab для apache svn

sed '$!N;$!N;$!N;$!N;s/\n/+/g' list.txt | bc

Демонстрация:

$ seq 33 | sed '$!N;$!N;$!N;$!N;s/\n/+/g'
1+2+3+4+5
6+7+8+9+10
11+12+13+14+15
16+17+18+19+20
21+22+23+24+25
26+27+28+29+30
31+32+33
$ seq 33 | sed '$!N;$!N;$!N;$!N;s/\n/+/g' | bc
15
40
65
90
115
140
96
$ 

Этот подход имеет несколько преимуществ:

  1. Простой
  2. Быстрый
  3. Четкое отделение группировки чисел от математики
  4. Правильно обрабатывает случаи 0 строк, 1 строки, 5n строк и не -multiple-of-5 rows

Если вы хотите отбросить лишние (например, отбросить с 31 по 33 в приведенном выше примере), вы можете избавиться от всех $! условия; это более простая команда, и это была моя первая попытка:

$ seq 33 | sed 'N;N;N;N;s/\n/+/g'
1+2+3+4+5
6+7+8+9+10
11+12+13+14+15
16+17+18+19+20
21+22+23+24+25
26+27+28+29+30
$ 
1
23.09.2015, 13:58
0 ответов

Теги

Похожие вопросы