#!/bin/sh ftpwho=/usr/local/bin/ftpwho awk=/usr/bin/awk ftproot=/dev/md0 (df $ftproot | grep $ftproot | sed -e 's/^/DF /'; $ftpwho --verbose) | $awk -W source ' BEGIN { dl = 0; ul = 0; idle = 0; uls = 0; dls = 0; last="idle"; print ""; print ""; } /^[ \t]*[0-9]+/ { if ($0 ~ /RETR/) { dl++; last="dl"; } else if ($0 ~ /STOR/) { ul++; last="ul"; } else { idle++; last="idle"; } } /KB\/s:/ { if ($2 != "inf") { if (last == "dl") dls = dls + $2 / 1024; else if (last == "ul") uls = uls + $2 / 1024; } } /^DF/ { printf ("\t", $2, $3 / (1024 * 1024), $4 / (1024 * 1024), $5 / (1024 * 1024)); } END { print "\t"'$disk_usage'; print "\t"; if (ul > 0) { print "\t 0) printf (" bandwidth=\"%.3f\" />", uls); else print "/>"; } if (dl > 0) { print "\t 0) printf (" bandwidth=\"%.3f\" />", dls); else print "/>"; } print ""; }';