#!/bin/csh -f

switch (`uname -s``uname -r`)
case SunOS5*:
    set ECHO = /usr/ucb/echo
    set GFIND = /usr/local/gnu/bin/find
    set GTOUCH = /usr/local/gnu/bin/touch
	breaksw
case Linux*:
    set ECHO = /bin/echo
    set GFIND = /usr/bin/find
    set GTOUCH = /bin/touch
	breaksw
default:
	exec echo ${0}: does not run on `uname -s` `uname -r`
endsw

while($#argv)
	switch ("$1")
	case -d:
		set DEBUG
#		shift
#		breaksw
# fall through to verbose
	case -v:
		set VERBOSE
		shift
		breaksw
	default:
		set DQ = '"'
		exec echo ${0}: "What do I do with $DQ$1$DQ?"
	endsw
end

if ($?VERBOSE) echo `date +%T` Checking for pageme files

/bin/ls /var/tmp | grep ^pageme > /dev/null
if ($status) then
    if ($?VERBOSE) echo `date +%T` None found
    exit
endif

set TMP = /tmp/`basename $0`.$$
set TSTMP = /tmp/`basename $0`.tstmp.$$
set AGE = "7 days"
$GTOUCH --date "$AGE ago" $TSTMP

if ($?VERBOSE) echo `date +%T` Checking for pageme files not accessed in $AGE
$GFIND /var/tmp -name pageme.\* ! -anewer $TSTMP -print |& \
    grep -v "Permission denied" > $TMP

if ($?DEBUG) then
    echo "   " Found `cat $TMP | wc -l` of those
endif

# don't complain about pages still in the future; 1/9/15
set TODAY = `date +%y%m%d`
set DATES = `sed 's;.*\.\([0-9]*\)\..*;\1;' $TMP`

foreach DATE ( $DATES )
    if ($DATE >= $TODAY) then
# hide this under verbose when we see it
	$ECHO -n "Not complaining about "
	grep $DATE $TMP
	grep -v $DATE $TMP > $TMP.new
	mv $TMP{.new,}
    endif
end

if (-z $TMP) then
    if ($?VERBOSE) echo `date +%T` None found
else
# defend against 
#  "/usr/local/gnu/bin/find: /var/tmp/mailbzaGbz: No such file or directory"
#  2/7/14
    grep ":" $TMP
    if (! $status) then
	echo ${0}: aborting
	exit 1
    endif
    set S
    @ COUNT = `cat $TMP | wc -l`
    if ($COUNT > 1) set S = "s"
    echo `date +%T` You may want to remove the following file${S}:
#    sed 's;\(.\);    \1;;' $TMP
#    /bin/rm `cat $TMP`
    set FILES = ( `cat $TMP` )
    foreach FILE ( $FILES )
	echo "    $FILE"
	sed 's;\(.\);	\1;;' $FILE
echo	/bin/rm $FILE
    end
endif

/bin/rm -f $TMP $TSTMP
