Monday, October 29, 2007

[Work] Shell script -- calculate sum and mean



#!/bin/bash
sum=0.0
line=0
count=0

for i in `awk '{printf("%12.7f ",$1)}' $1`
do
line=$(( $line+1 ))
if [ $line -ge 200 -a $line -lt 600 ]
then
a=`echo $sum+$i | bc -l`
sum=$a
count=$(( $count + 1 ))
fi
done

echo sum = $sum
echo count = $count
a=`echo $sum/$count | bc -l`
echo mean = $a

exit 1


--------------------
simply select lines

#!/bin/bash

line=0
count=0

for i in `awk '{printf("%12.7f ",$1)}' $1`
do
line=$(( $line+1 ))
if [ $line -ge $2 -a $line -lt $3 ]
then
echo $i
fi
done

exit 1

No comments: