diff --git a/commands/scripts/Makefile b/commands/scripts/Makefile index 94297165e..e5f28f0ab 100755 --- a/commands/scripts/Makefile +++ b/commands/scripts/Makefile @@ -34,6 +34,7 @@ usr: \ /usr/bin/mkdep \ /usr/bin/mkdist \ /usr/bin/setup \ + /usr/bin/rotate \ /usr/bin/floppysetup \ /usr/bin/spell \ /usr/bin/srccrc \ @@ -105,6 +106,9 @@ clean: /usr/bin/floppysetup: floppysetup.sh install -m 755 -c -o bin $? $@ +/usr/bin/rotate: rotate.sh + install -m 755 -c -o bin $? $@ + /usr/bin/setup: setup.sh install -m 755 -c -o bin $? $@ diff --git a/commands/scripts/rotate.sh b/commands/scripts/rotate.sh new file mode 100755 index 000000000..f5ca9789e --- /dev/null +++ b/commands/scripts/rotate.sh @@ -0,0 +1,28 @@ +#!/bin/sh + +RM="rm -f" +MV="mv -f" + +if [ $# -ne 2 ] +then echo "Usage: $0 " + exit 1 +fi + +if [ ! -f "$1" ] +then echo "$1 doesn't exist or isn't a file." + exit 1 +fi + +if [ "$2" -le 0 ] +then echo "Keep at least 1 copy please." + exit 1 +fi + +k="$2" +$RM "$1.$k" || exit 1 +while [ "$k" -ge 2 ] +do prev="`expr $k - 1`" + $MV $1.$prev.gz $1.$k.gz 2>/dev/null + k=$prev +done +gzip -c $1 >$1.1.gz && : >$1