|
|
1.1 ! root 1: case $# in ! 2: 0) ! 3: FILE=/usr/spool/uucp/SYSLOG ! 4: ;; ! 5: 1) ! 6: FILE=$* ! 7: ;; ! 8: *) ! 9: echo "usage: uustat [syslog]" ! 10: ;; ! 11: esac ! 12: awk ' \ ! 13: $5 ~ /received/ {ftotal++; fcount[$2]++; fbytes[$2] += $7; \ ! 14: fsecs[$2] += $9} \ ! 15: $5 ~ /sent/ {ttotal++; tcount[$2]++; tbytes[$2] += $7; \ ! 16: tsecs[$2] += $9} \ ! 17: { curtime = substr($4, 5, 6); \ ! 18: dtmp = curtime - int($9) - lasttime[$2]; \ ! 19: if (dtmp > 0) if (dtmp < 20) \ ! 20: dead[$2] += dtmp; \ ! 21: lasttime[$2] = curtime; \ ! 22: live[$2] += $9 ; \ ! 23: } \ ! 24: END { if (ftotal) for (i in fbytes) { \ ! 25: printf "got from %8s %4d files %7d bytes %5d secs", i, \ ! 26: fcount[i], fbytes[i], fsecs[i]; \ ! 27: if (fsecs[i]) printf " %.2f bytes/sec", fbytes[i]/fsecs[i]; \ ! 28: printf "\n"; } \ ! 29: if (ttotal) for (i in tbytes) { \ ! 30: printf "sent to %8s %4d files %7d bytes %5d secs", i, \ ! 31: tcount[i], tbytes[i], tsecs[i]; \ ! 32: if (tsecs[i]) printf " %.2f bytes/sec", tbytes[i]/tsecs[i]; \ ! 33: printf "\n"; } \ ! 34: for (i in live) { \ ! 35: printf "%8s live%5d secs dead%5d secs\n", i, live[i], dead[i]; } \ ! 36: }' \ ! 37: $FILE
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.