The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Сложение неизвестного кол-ва значений."
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"Сложение неизвестного кол-ва значений."  
Сообщение от invisible on 26-Сен-06, 11:44 
Привет.

Есть некий скрипт, на выходе которого значения (не определенное кол-во) в столбик. Как сложить все эти числа?

Например, на выходе 3 числа:

23
45
56

Или 4 числа:

23
34
56
2

Как получить сумму?

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "Сложение неизвестного кол-ва значений."  
Сообщение от sanya (??) on 26-Сен-06, 12:21 
>Привет.
Perl рулит...

<твой скрипт> | perl -e 'my $sum; while (<>) { $sum += $_ } print $sum'

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

2. "Сложение неизвестного кол-ва значений."  
Сообщение от invisible on 26-Сен-06, 12:27 
>>Привет.
>Perl рулит...
>
><твой скрипт> | perl -e 'my $sum; while (<>) { $sum += $_ } print $sum'

Мне бы на шелле, пожалуйста.


Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

3. "Сложение неизвестного кол-ва значений."  
Сообщение от sas email(??) on 26-Сен-06, 13:17 
>>>Привет.
>>Perl рулит...
>>
>><твой скрипт> | perl -e 'my $sum; while (<>) { $sum += $_ } print $sum'
>
>Мне бы на шелле, пожалуйста.

shift

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

4. "Сложение неизвестного кол-ва значений."  
Сообщение от invisible on 26-Сен-06, 13:26 
>>>>Привет.
>>>Perl рулит...
>>>
>>><твой скрипт> | perl -e 'my $sum; while (<>) { $sum += $_ } print $sum'
>>
>>Мне бы на шелле, пожалуйста.
>
>shift

Поподробней можно?

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

8. "Сложение неизвестного кол-ва значений."  
Сообщение от sas email(??) on 29-Сен-06, 06:34 
>>>>>Привет.
>>>>Perl рулит...
>>>>
>>>><твой скрипт> | perl -e 'my $sum; while (<>) { $sum += $_ } print $sum'
>>>
>>>Мне бы на шелле, пожалуйста.
>>
>>shift
>
>Поподробней можно?


#!/bin/bash
s=0
while [ ! -z $1 ]; do
    s=$(($s+$1))
    shift
done
echo "Result: $s"

Пример применения (числа находятся в файле "nums"):

./calc.sh $(cat nums)

Удачи
--- sas

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

5. "Сложение неизвестного кол-ва значений."  
Сообщение от madskull (ok) on 26-Сен-06, 17:39 
>>>Привет.
>>Perl рулит...
>>
>><твой скрипт> | perl -e 'my $sum; while (<>) { $sum += $_ } print $sum'
>
>Мне бы на шелле, пожалуйста.

собсно, перл уже давно можно считать частью шелл-утилитой, как и awk:

script | awk '{s+=$0}END{print s}'

а если нужно "чиста баш", то
s=0; while read i; do ((s+=i)); done < <(script); echo $s

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

6. "Сложение неизвестного кол-ва значений."  
Сообщение от invisible on 28-Сен-06, 11:57 
>>>>Привет.
>>>Perl рулит...
>>>
>>><твой скрипт> | perl -e 'my $sum; while (<>) { $sum += $_ } print $sum'
>>
>>Мне бы на шелле, пожалуйста.
>
>собсно, перл уже давно можно считать частью шелл-утилитой, как и awk:
>
>script | awk '{s+=$0}END{print s}'
>
>а если нужно "чиста баш", то
>s=0; while read i; do ((s+=i)); done < <(script); echo $s
Спасибо огромное.


Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

7. "Сложение неизвестного кол-ва значений."  
Сообщение от aljil (??) on 28-Сен-06, 14:50 
Даже не баш %-)

#!/bin/sh
s='0'
for i in `тут-твой-скрипт`
do
   s=$(( $s + $i ))
done
echo "${s}"

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру