Sponsored Content
Full Discussion: Finding an average
Top Forums Shell Programming and Scripting Finding an average Post 302860935 by MadeInGermany on Monday 7th of October 2013 03:10:39 PM
Old 10-07-2013
Your requirement is not quite clear.
The following reads numbers of files from arguments, or from stdin if no arguments are provided.
The numbers in files or stdin can be placed in columns or rows or both
Code:
set -f # no wildcard globbing
sum=0
n=0

from_stdin() {
while read line
do
    set -- $line
    for i
    do
       sum=` expr $sum + $i `
       n=` expr $n + 1 `
    done
done
}

if [ -z "$1" ]
then
   from_stdin
else
    for i
    do
        if [ -f "$i" ]
        then
            from_stdin < "$i"
        else
            sum=` expr $sum + $i `
            n=` expr $n + 1 `
        fi
    done
fi

if [ $n -gt 0 ]
then
    average=` expr $sum / $n `
    echo $average
fi


Last edited by MadeInGermany; 10-07-2013 at 04:17 PM.. Reason: quoting to allow file name with spaces
This User Gave Thanks to MadeInGermany For This Post:
 

10 More Discussions You Might Find Interesting

1. Programming

Finding Average for BST

Helo guys, this is not specifically a C programming problem for the unix platform, but a problem i came across in class: Find the average for a binary search tree: typedef Struct SNode { double value; SNode *leftChild; SNode *rightChild; } as SNode; /* * Solution 1 */ ... (2 Replies)
Discussion started by: heljy
2 Replies

2. UNIX Desktop Questions & Answers

How to find no of occurances Finding average time?

Hi, I have MyLog.log file, and it contains "*** response Time 150", I want to develop Unix script like , 1. extract all such occurances in the MyLog.log file and 2. compute the average time taken I am new to Unix, any one can give any idea/sample code for this? Thanks in advance. (1 Reply)
Discussion started by: redlotus72
1 Replies

3. UNIX for Dummies Questions & Answers

Load Average

Hello all, I have a question about load averages. I've read the man pages for the uptime and w command for two or three different flavors of Unix (Red Hat, Tru64, Solaris). All of them agree that in the output of the 2 aforementioned commands, you are given the load average for the box, but... (3 Replies)
Discussion started by: Heathe_Kyle
3 Replies

4. Shell Programming and Scripting

finding duplicate files by size and finding pattern matching and its count

Hi, I have a challenging task,in which i have to find the duplicate files by its name and size,then i need to take anyone of the file.Then i need to open the file and find for more than one pattern and count of that pattern. Note:These are the samples of two files,but i can have more... (2 Replies)
Discussion started by: jerome Sukumar
2 Replies

5. UNIX for Dummies Questions & Answers

average value

If I have a file like this, could anyone please guide me how to find the average value in each metrix. The file has got about 130,000 metrixs. Grid-ref= 142, 235 178 182 203 240 273 295 289 293 283 262 201 176 167 187 187 246 260 282 299 312 293 276 230 191 169 ... (2 Replies)
Discussion started by: su_in99
2 Replies

6. UNIX for Dummies Questions & Answers

Please Help me in my load average

Hello AlL,.. I want from experts to help me as my load average is increased and i dont know where is the problem !! this is my top result : root@a4s # top top - 11:30:38 up 40 min, 1 user, load average: 3.06, 2.49, 4.66 Mem: 8168788k total, 2889596k used, 5279192k free, 47792k... (3 Replies)
Discussion started by: black-code
3 Replies

7. Shell Programming and Scripting

Perl- Finding average "frequency" of occurrence of duplicate lines

Hello, I am working with a perl script that tries to find the average "frequency" in which lines are duplicated. So far I've only managed to find the way to count how many times the lines are repeated, the code is as follows: perl -ae' my $filename= $ENV{'i'}; open (FILE, "$filename") or... (10 Replies)
Discussion started by: acsg
10 Replies

8. Shell Programming and Scripting

shell script for finding average runtime of other script

so I've made a shell script that downloads 6 files in succession from a given url, then deletes them. Now I want to time the script, and the average time it uses by running it ~100 times. My problem is tho, how do I store the time it takes for each run through of the script? I know time writes to... (3 Replies)
Discussion started by: navlelo
3 Replies

9. Shell Programming and Scripting

Finding minimum maximum and average

I am trying to find the minimum maximum and average from one file which has values Received message from https://www.demandmatrix.net/app/dm/xml] in milliseconds. Received message from https://www.demandmatrix.net/app/dm/xml] in milliseconds. Received message from... (5 Replies)
Discussion started by: aroragaurav.84
5 Replies

10. UNIX for Advanced & Expert Users

Want to get average value for each hour

I want to get CPU average value only (not required user CPU & memory) with each hours on individual date. The sample output is below | | | User |Memory| User | Date | Time |CPU %|CPU % | % |Mem % | 03/02/2015|00:00:00| 24.56| 20.66| 89.75| 63.48|... (13 Replies)
Discussion started by: Saravanan_0074
13 Replies
..::lib::Smokeping::matchers::Avgratio(3)			     SmokePing				 ..::lib::Smokeping::matchers::Avgratio(3)

NAME
Smokeping::matchers::Avgratio - detect changes in average median latency OVERVIEW
The Avgratio matcher establishes a historic average median latency over several measurement rounds. It compares this average, against a second average latency value again build over several rounds of measurement. DESCRIPTION
Call the matcher with the following sequence: type = matcher pattern = Avgratio(historic=>a,current=>b,comparator=>o,percentage=>p) historic The number of median values to use for building the 'historic' average. current The number of median values to use for building the 'current' average. comparator Which comparison operator should be used to compare current/historic with percentage. percentage Right hand side of the comparison. old <--- historic ---><--- current ---> now EXAMPLE
Take build the average median latency over 10 samples, use this to divide the current average latency built over 2 samples and check if it is bigger than 150%. Avgratio(historic=>10,current=>2,comparator=>'>',percentage=>150); avg(current)/avg(historic) > 150/100 This means the matcher will activate when the current latency average is more than 1.5 times the historic latency average established over the last 10 rounds of measurement. COPYRIGHT
Copyright (c) 2004 by OETIKER+PARTNER AG. All rights reserved. SPONSORSHIP
The development of this matcher has been sponsored by Virtela Communications, <http://www.virtela.net/>. LICENSE
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. AUTHOR
Tobias Oetiker <tobi@oetiker.ch> 2.6.8 2012-02-26 ..::lib::Smokeping::matchers::Avgratio(3)
All times are GMT -4. The time now is 01:50 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy