1# CONFIG file is inserted here 2 3OPT="" 4SORTMODE="" 5ALL=false 6 7LOOP=true 8while $LOOP 9do 10 case "$1" in 11 -a) OPT="$OPT -a" 12 ALL=true 13 shift ;; 14 -t) SORTMODE="+1nr" 15 shift ;; 16 -at) OPT="$OPT -a" 17 ALL=true 18 SORTMODE="+1nr" 19 shift ;; 20 -*) echo "$0: unknown option: $1" 21 exit 1 22 ;; 23 *) LOOP=false 24 ;; 25 esac 26done 27 28if [ -f $DB/acct -a -f $BIN/nnacct ] ; then 29 if $AUTH ; then 30 echo "USER USAGE QUOTA LAST_ACTIVE COST/PERIOD POLICY" 31 else 32 echo "USER USAGE QUOTA LAST_ACTIVE COST/PERIOD" 33 fi 34 $BIN/nnacct -r $OPT $@ | sed -e 1d | sort $SORTMODE 35 exit 36fi 37 38OLDLOG=${LOG}.old 39if [ ! -s ${OLDLOG} ] 40then 41 OLDLOG="" 42fi 43 44cat $OLDLOG $LOG | 45if $ALL 46then 47 grep '^U:' 48else 49 grep "^U:.*(${LOGNAME-$USER})" 50fi | 51 52${AWK} ' 53BEGIN { 54 any=0 55} 56NF == 7 { 57 if (split($7, t, ".") == 2) { 58 u[$5] += t[1] * 60 + t[2] 59 if (any == 0) printf("Usage since %s %d, %s\n", $2, $3, $4) 60 any=1 61 } 62} 63END { 64 if (!any) { 65 printf("No usage statistics\n") 66 exit 67 } 68 for (n in u) { 69 name=substr(n, 2, length(n)-3) 70 printf("%-10.10s%8d.%02d\n", name, u[n]/60, u[n]%60); 71 } 72}' | 73 74sort $SORTMODE 75