#!/bin/sh
# @(#)logrotate.sh	1.3 revision of 97/09/29  14:47:48
# This is an unpublished work copyright (c) 1997 HELIOS Software GmbH
# 30159 Hannover, Germany

PATH=$PATH:/etc

NUMLOGS=0
OWNER=root
GROUP=0
MODE=644

USAGE="Usage: $0 [-n numlogs] [-m mode] [-o owner] [-g group] logfile"

while getopts 'n:m:o:g:' c
do
	case $c in
	n)
		NUMLOGS="$OPTARG"
		;;
	m)
		MODE="$OPTARG"
		;;
	o)
		OWNER="$OPTARG"
		;;
	g)
		GROUP="$OPTARG"
		;;
	\?)
		echo "$USAGE" >&2
		exit 1
		;;
	esac
done
shift `expr $OPTIND - 1`
if test $# -lt 1
then
	echo "$USAGE" >&2
	exit 1
fi

while test $# -ne 0
do
	LOGFILE="$1"

	N=$NUMLOGS
	while test $N -gt 0
	do
		NMINUS1=`expr $N - 1`
		if test -f $LOGFILE.$NMINUS1
		then
			mv $LOGFILE.$NMINUS1 $LOGFILE.$N
		fi
		N=$NMINUS1
	done

	if test -f $LOGFILE
	then
		mv $LOGFILE $LOGFILE.0
	fi
	cp /dev/null $LOGFILE
	chown $OWNER $LOGFILE
	chgrp $GROUP $LOGFILE
	chmod $MODE $LOGFILE

	shift
done
