1#!/bin/sh - 2# 3# $NetBSD: virecover,v 1.1 2013/11/22 16:00:45 christos Exp $ 4# 5# @(#)recover.in 8.8 (Berkeley) 10/10/96 6# 7# Script to recover nvi edit sessions. 8 9RECDIR="/var/tmp/vi.recover" 10SENDMAIL="/usr/sbin/sendmail" 11 12# Check editor backup files. 13vibackup=`echo $RECDIR/vi.*` 14if [ "$vibackup" != "$RECDIR/vi.*" ]; then 15 for i in $vibackup; do 16 # Only test files that are readable. 17 if test ! -f $i || test ! -r $i; then 18 continue 19 fi 20 21 # Unmodified nvi editor backup files either have the 22 # execute bit set or are zero length. Delete them. 23 if test -x $i -o ! -s $i; then 24 rm $i 25 fi 26 done 27fi 28 29# It is possible to get incomplete recovery files, if the editor crashes 30# at the right time. 31virecovery=`echo $RECDIR/recover.*` 32if [ "$virecovery" != "$RECDIR/recover.*" ]; then 33 for i in $virecovery; do 34 # Only test files that are readable. 35 if test ! -r $i; then 36 continue 37 fi 38 39 # Delete any recovery files that are zero length, corrupted, 40 # or that have no corresponding backup file. Else send mail 41 # to the user. 42 recfile=`awk '/^X-vi-recover-path:/{print $2}' < $i` 43 if test -n "$recfile" -a -s "$recfile"; then 44 $SENDMAIL -t < $i 45 else 46 rm $i 47 fi 48 done 49fi 50