Re: lug-bg: sum and sort with bash
- Subject: Re: lug-bg: sum and sort with bash
- From: Georgi Genov <ggenov@xxxxxxxxxxx>
- Date: Fri, 22 Oct 2004 12:29:44 +0300
Ivailo Ivanov wrote:
Zdraveite,
Imam fail sas sledata struktura:
source-ip-1 dest-ip bytes digit1 digit2 digit3
source-ip-2 dest-ip bytes digit1 digit2 digit3
source-ip-1 dest-ip bytes digit1 digit2 digit3
source-ip-1 dest-ip bytes digit1 digit2 digit3
-----------------------
source-ip-n dest-ip bytes digit1 digit2 digit3
Iskam da sortiram source ip-ta ta spriamo sumarnite
bytes ot vsiako ot tiah. Triabva da se polu4i neshto
takova, primerno:
1. source-ip-1 10929Mb
2. source-ip-6 1234Mb
3. sourceip-24 125Mb
--------------------
I taka natatak....
Ето ти един скрипт за подреждане по големина на числа.
А ако ми дадеш и примерен ред от лога за да видя какъв точно е парсера
между стойностите
ще ти ги обединя и двата скрипта в един.
#!/bin/sh
#edit
db="2345 4634 677547 45 2 574 876854 4563463 35 34637 734443 4573 7457
376277 357447 7457 5 5 98"
#########
#vuvejda dannite v masiv
n=0
for m in $db; do
n=`expr $n + 1`
db[$n]=$m
done
#prenarejda masiwa
x=$n
while [ ! $x -eq 1 ]; do
y=$n
while [ ! $y -eq 1 ]; do
y1=`expr $y - 1`
if [ $(echo "${db[$y]} < ${db[$y1]}" | bc) -eq 1 ]; then
tmp=${db[$y1]}
db[$y1]=${db[$y]}
db[$y]=$tmp
fi
y=`expr $y - 1`
done
x=`expr $x - 1`
done
#izvejda rezultata
while [ ! $n -eq 0 ]; do
echo -n "${db[$n]} "
n=`expr $n - 1`
done
echo
exit 0
============================================================================
A mail-list of Linux Users Group - Bulgaria (bulgarian linuxers).
http://www.linux-bulgaria.org - Hosted by Internet Group Ltd. - Stara Zagora
To unsubscribe: http://www.linux-bulgaria.org/public/mail_list.html
============================================================================
|