1*10063Ssam#! /bin/csh 2*10063Ssam# @(#)remdiff 4.1 (Berkeley) 01/01/83 3*10063Ssam# 4*10063Ssam# usage: uudiff directory-local sys![directory-remote] 5*10063Ssam# 6*10063Ssamset UUDIR=/usr/src/cmd/uudiff 7*10063Ssamset UUCP=/usr/src/cmd/uucp 8*10063Ssamset SPOOL=/usr/tmp/uucp 9*10063Ssamset UNIXNAME=vax1 10*10063Ssamset DIFF=YES 11*10063Ssamcase $1 in 12*10063Ssam -d) set DIFF=NO; shift;; 13*10063Ssamesac 14*10063Ssam 15*10063Ssamset HERE=`pwd` 16*10063Ssamset ME=`getuid` 17*10063Ssam 18*10063Ssamset LOCAL=$1 19*10063Ssamset SYS=`echo $2 | sed "s/!.*//"` 20*10063Ssamif [ $SYS = $2 ] 21*10063Ssam then set SYS=$UNIXNAME 22*10063Ssamfi 23*10063Ssam 24*10063Ssamset REMOTE=`echo $2 | sed "s/.*!//"` 25*10063Ssamif [ x$REMOTE = x ] 26*10063Ssam then set $REMOTE = $LOCAL 27*10063Ssamfi 28*10063Ssam 29*10063Ssamset LOCAL=`$UUDIR/lenrem $LOCAL $HERE` 30*10063Ssamset REMOTE=`$UUDIR/lenrem $REMOTE $HERE` 31*10063Ssamset LOCDIR=$LOCAL 32*10063Ssamset DIR=YES 33*10063Ssamset REMDIR=$REMOTE 34*10063Ssamif [ -f $LOCDIR ] 35*10063Ssam then 36*10063Ssam set LOCDIR=`$UUDIR/trim $LOCDIR` 37*10063Ssam set REMDIR=`$UUDIR/trim $REMDIR` 38*10063Ssam set DIR=NO 39*10063Ssam fi 40*10063Ssam 41*10063Ssamcat >zza$pid <<! 42*10063Ssam$UUCP/filsum $REMOTE >zzb$pid 43*10063Ssam! 44*10063Ssamuucp -f zza$pid $SYS!ef$pid 45*10063Ssam$UUCP/tdemon >>/$UUCP/tmess & 46*10063Ssamif [ $SYS = research ] 47*10063Ssam then 48*10063Ssam cat >$SPOOL/cq$pid <<% 49*10063Ssamzzb$pid 50*10063Ssam 51*10063Ssamcp zzb$pid $HERE/zzc$pid 52*10063Ssam% 53*10063Ssamelse 54*10063Ssamuucp -f -w $SYS!zzb$pid $HERE/zzc$pid 55*10063Ssamfi 56*10063Ssam$UUCP/tdemon >>/$UUCP/tmess & 57*10063Ssam$UUCP/filsum $LOCAL >zzd$pid 58*10063Ssamcat >$SPOOL/cz$pid <<! 59*10063Ssam$HERE/zzc$pid 60*10063Ssam 61*10063Ssamchdir $HERE 62*10063Ssamcat >zzy$pid <<% 63*10063Ssamrm zzb$pid 64*10063Ssam% 65*10063Ssamuucp -f zzy$pid $SYS!ey$pid 66*10063Ssamrm zzy$pid 67*10063Ssamcat >uudiff$pid <<% 68*10063Ssamuudiff comparison of 69*10063Ssam $LOCAL here 70*10063Ssamwith 71*10063Ssam $REMOTE on system $SYS 72*10063Ssam 73*10063Ssam 74*10063Ssam 75*10063Ssam% 76*10063Ssam$UUDIR/run1 zzd$pid zzc$pid zzl$pid | sort >>uudiff$pid 77*10063Ssam 78*10063Ssamcat >zzm$pid <<% 79*10063Ssamcg$pid 80*10063Ssam% 81*10063Ssamcat >zzn$pid <<% 82*10063Ssam 83*10063Ssamchdir $HERE 84*10063Ssam% 85*10063Ssam 86*10063Ssamif [ $DIFF = YES ] 87*10063Ssam then 88*10063Ssam if [ $DIR = NO ] 89*10063Ssam then $UUDIR/locpart $LOCAL >zzl$pid 90*10063Ssam fi 91*10063Ssam for f in \`cat zzl${pid}\` 92*10063Ssam do 93*10063Ssam if $UUDIR/printable $LOCDIR/\$f 94*10063Ssam then 95*10063Ssam if [ $DIR = YES ] 96*10063Ssam then uucp $SYS!$REMDIR/\$f \$f.$pid 97*10063Ssam else uucp $SYS!$REMOTE \$f.$pid 98*10063Ssam fi 99*10063Ssam echo $HERE/\$f.$pid >>zzm$pid 100*10063Ssam cat >>zzn$pid <<% 101*10063Ssam 102*10063Ssamecho >>uudiff$pid 103*10063Ssamecho DIFF of \$f: '(< here, > remote)' >>uudiff$pid 104*10063Ssamdiff $LOCDIR/\$f \$f.$pid >>uudiff$pid 105*10063Ssam% 106*10063Ssam fi 107*10063Ssam done 108*10063Ssamfi 109*10063Ssam 110*10063Ssamcat >>zzn$pid <<% 111*10063Ssamecho uudiff$pid arrived in $HERE "|" mail $ME 112*10063Ssamrm zz?$pid 113*10063Ssam% 114*10063Ssamcat zzm$pid zzn$pid >>$SPOOL/cg$pid 115*10063Ssam! 116*10063Ssam$UUCP/tdemon >>/$UUCP/tmess 117