1#!/bin/sh - 2# 3# Id: recover.in,v 8.9 2001/08/30 13:59:23 skimo Exp (Berkeley) Date: 2001/08/30 13:59:23 4# 5# Script to recover nvi edit sessions. 6 7RECDIR="@vi_cv_path_preserve@" 8SENDMAIL="@vi_cv_path_sendmail@" 9 10echo 'Recovering nvi editor sessions.' 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 ! -r $i; then 18 continue 19 fi 20 21 INUSE="@INUSE@" 22 if test "$INUSE" && $INUSE; then 23 continue 24 fi 25 26 # Unmodified nvi editor backup files either have the 27 # execute bit set or are zero length. Delete them. 28 if test -x $i -o ! -s $i; then 29 rm $i 30 fi 31 done 32fi 33 34# It is possible to get incomplete recovery files, if the editor crashes 35# at the right time. 36virecovery=`echo $RECDIR/recover.*` 37if [ "$virecovery" != "$RECDIR/recover.*" ]; then 38 for i in $virecovery; do 39 # Only test files that are readable. 40 if test ! -r $i; then 41 continue 42 fi 43 44 INUSE="@INUSE@" 45 if test "$INUSE" && $INUSE; then 46 continue 47 fi 48 49 # Delete any recovery files that are zero length, corrupted, 50 # or that have no corresponding backup file. Else send mail 51 # to the user. 52 recfile=`awk '/^X-vi-recover-path:/{print $2}' < $i` 53 if test -n "$recfile" -a -s "$recfile"; then 54 $SENDMAIL -t < $i 55 else 56 rm $i 57 fi 58 done 59fi 60