1169854Sdds#!/bin/sh 2169854Sdds# 3169854Sdds# $FreeBSD$ 4169854Sdds# 5169854Sdds 6169854SddsDIR=`dirname $0` 7169854SddsLCDIR=`dirname $0`/../../usr.bin/lastcomm 8169854SddsARCH=`uname -m` 9169854Sdds 10263083Sjmmvcollapse_whitespace() 11263083Sjmmv{ 12263083Sjmmv sed -E 's,[ ]+, ,g' 13263083Sjmmv} 14263083Sjmmv 15169854Sddscheck() 16169854Sdds{ 17169854Sdds NUM=$1 18169854Sdds shift 19263083Sjmmv collapse_whitespace | \ 20169854Sdds if diff -q - $1 21169854Sdds then 22169854Sdds echo "ok $NUM" 23169854Sdds else 24169854Sdds echo "not ok $NUM" 25169854Sdds fi 26169854Sdds} 27169854Sdds 28263226Sjmmvinstall -c -m 644 $LCDIR/v1-$ARCH-acct.in v1-$ARCH-acct.in 29263226Sjmmvinstall -c -m 644 $LCDIR/v2-$ARCH-acct.in v2-$ARCH-acct.in 30169854Sdds 31169854Sddsecho 1..13 32169854Sdds 33169854Sdds# Command listings of the two acct versions 34263226Sjmmvsa -u v1-$ARCH-acct.in | check 1 $DIR/v1-$ARCH-u.out 35263226Sjmmvsa -u v2-$ARCH-acct.in | check 2 $DIR/v2-$ARCH-u.out 36169854Sdds 37169854Sdds# Plain summaries of user/process 38263226Sjmmvsa -i v1-$ARCH-acct.in | check 3 $DIR/v1-$ARCH-sav.out 39263226Sjmmvsa -im v1-$ARCH-acct.in | check 4 $DIR/v1-$ARCH-usr.out 40169854Sdds 41169854Sdds# Backward compatibility of v1 summary files 42169854Sddssa -P $DIR/v1-$ARCH-sav.in -U $DIR/v1-$ARCH-usr.in /dev/null | 43169854Sdds check 5 $DIR/v1-$ARCH-sav.out 44169854Sddssa -m -P $DIR/v1-$ARCH-sav.in -U $DIR/v1-$ARCH-usr.in /dev/null | 45169854Sdds check 6 $DIR/v1-$ARCH-usr.out 46169854Sdds 47169854Sdds# Convert old summary format to new 48263226Sjmmvinstall -c -m 644 $DIR/v1-$ARCH-sav.in v2c-$ARCH-sav.in 49263226Sjmmvinstall -c -m 644 $DIR/v1-$ARCH-usr.in v2c-$ARCH-usr.in 50263226Sjmmvsa -s -P v2c-$ARCH-sav.in -U v2c-$ARCH-usr.in /dev/null >/dev/null 51263226Sjmmvsa -P v2c-$ARCH-sav.in -U v2c-$ARCH-usr.in /dev/null | 52169854Sdds check 7 $DIR/v1-$ARCH-sav.out 53263226Sjmmvsa -m -P v2c-$ARCH-sav.in -U v2c-$ARCH-usr.in /dev/null | 54169854Sdds check 8 $DIR/v1-$ARCH-usr.out 55169854Sdds 56169854Sdds# Reading v2 summary files 57169854Sddssa -P $DIR/v2-$ARCH-sav.in -U $DIR/v2-$ARCH-usr.in /dev/null | 58169854Sdds check 9 $DIR/v1-$ARCH-sav.out 59169854Sddssa -m -P $DIR/v2-$ARCH-sav.in -U $DIR/v2-$ARCH-usr.in /dev/null | 60169854Sdds check 10 $DIR/v1-$ARCH-usr.out 61169854Sdds 62169854Sdds# Summarize 63263226Sjmmvsa -is -P v2c-$ARCH-sav.in -U v2c-$ARCH-usr.in v1-$ARCH-acct.in >/dev/null 64263226Sjmmvsa -P v2c-$ARCH-sav.in -U v2c-$ARCH-usr.in /dev/null | 65169854Sdds check 11 $DIR/v1-$ARCH-sav.out 66263226Sjmmvsa -m -P v2c-$ARCH-sav.in -U v2c-$ARCH-usr.in /dev/null | 67169854Sdds check 12 $DIR/v1-$ARCH-usr.out 68169854Sdds 69169854Sdds# Accumulate 70263226Sjmmvinstall -c -m 644 $LCDIR/v1-$ARCH-acct.in v1-$ARCH-acct.in 71263226Sjmmvsa -is -P v2c-$ARCH-sav.in -U v2c-$ARCH-usr.in v1-$ARCH-acct.in >/dev/null 72263226Sjmmvinstall -c -m 644 $LCDIR/v1-$ARCH-acct.in v1-$ARCH-acct.in 73263226Sjmmvsa -s -P v2c-$ARCH-sav.in -U v2c-$ARCH-usr.in v1-$ARCH-acct.in \ 74263226Sjmmv | collapse_whitespace >double 75263226Sjmmvcp $LCDIR/v1-$ARCH-acct.in v1-$ARCH-acct.in 76263226Sjmmvsa -i v1-$ARCH-acct.in v1-$ARCH-acct.in | check 13 double 77169854Sdds 78169854Sddsexit 0 79