#!/bin/sh
# compress_news
# compresses news articles under /var/spool/news older than 6 days
USER=${USER-$LOGNAME}

if test -z "$USER"; then
  echo No \$USER set >&2
  exit 1
elif test "$USER" != news; then
  echo Must be news >&2
  exit 1
else
  renice 19 $$		# very nice
  days=+6		# only compress older than 6 days
  size=+1k		# pointless to compress files smaller than block size
  parallel=4		# run several gzips at once
  cd /var/spool/news
  date
  df .
  zfind . -type f -size $size -name '*[0-9]' -ctime $days -print | \
    xargs -n 999 -P $parallel gzip -q
  df .
  date
fi
