#!/bin/awk -f #Красоту столбцов мне было лень наводить т.к. писал в 3 часа ночи :) #Использовать: qico.stat < /fido/log/history #Результаты можно постить в ньюсы примерно так: #qico.stat59) { printf(" %6.1f %3s",$3/60,"мин")} else { printf(" %6d %3s",$3,"сек")} printf(" %15s",$4) if ($6>999) {printf(" %10.1fК", $6/1024)} else {printf(" %10d ", $6)} if ($7>999) {printf(" %10.1fК", $7/1024)} else {printf(" %10d ", $7)} trafS+=$6;trafR+=$7;sumLin+=$3 if (index ($5,"0")==0) {stat="*OK*";sumC++;} else {stat="_FAILED_";sumF++ } printf(" %8s\n",stat) total_link[$4]+=1 total_time[$4]+=$3 total_trafS[$4]+=$6 total_trafR[$4]+=$7 } } END { print("---------------------------------------------------------------------------") print ("\n_Суммарная статистика по линкам_") print("---------------------------------------------------------------------------") print(" Адрес Длит. От нас Hам Сессий ") print("---------------------------------------------------------------------------") for (i in total_link) { printf(" %15s", i) if (total_time[i]>59) { printf(" %9.1f %3s",total_time[i]/60,"мин")} else {printf(" %9d %3s",total_time[i],"сек")} if (total_trafS[i]>999) {printf(" %10.1fК", total_trafS[i]/1024)} else {printf(" %10d ", total_trafS[i])} if (total_trafR[i]>999) {printf(" %14.1fК", total_trafR[i]/1024)} else {printf(" %14d ", total_trafR[i])} printf(" %8s\n",total_link[i]) } print("---------------------------------------------------------------------------") printf("Общий трафик, send/recv: %0.1fК / %0.1fК\n", trafS/1024,trafR/1024) print ("Удачных сессий: " sumC) print ("Плохих сессий: " sumF) print ("Всего сессий за " dat " : " sumC+sumF) printf("Общее время на линии %5.1f мин\n", sumLin/60) }