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