#!/bin/bash
+MINZIZE="524288"
+DO_ROTATE="n"
+
cd /home/frank/.procmail || exit 5
-for f in procmail.20*.log ; do
- if [ -f "$f" ] ; then
- if [ -s "$f" ] ; then
- gzip -v9 "$f"
- mv -vi "$f".gz .old/
- else
- rm -v "$f"
- fi
+if [[ -s procmail.log ]] ; then
+ CURZIZE=$( stat -c '%s' procmail.log )
+ if [[ -n "${MINZIZE}" && "${CURZIZE}" -ge "${MINZIZE}" ]] ; then
+ DO_ROTATE="y"
+ else
+ DO_ROTATE="y"
fi
-done
+fi
+
+if [[ "${DO_ROTATE}" = "y" ]] ; then
+ for f in procmail.20*.log ; do
+ if [[ -f "$f" ]] ; then
+ if [[ -s "$f" ]] ; then
+ gzip -v9 "$f"
+ mv -vi "$f".gz .old/
+ else
+ rm -v "$f"
+ fi
+ fi
+ done
-if [ -s procmail.log ] ; then
mv -vi procmail.log procmail.$( date +'%Y-%m-%d_%H-%M-%S' ).log
touch procmail.log
+
fi