1#! /bin/csh -f 2# 3# SCCS id: @(#)difftc.sh 1.4 (Berkeley) 11/01/85 4# 5# diff termcap files 6set path=(/usr/ucb /bin /usr/bin /usr/new /usr/local . $path) 7set n=1 files=() flags=() term=() 8 9if (! $?cwd) then 10 set cwd=. 11endif 12if ("$cwd" !~ /*) then 13 set cwd=`pwd` 14endif 15 16while ($n <= $#argv) 17 if ("$argv[$n]" == "-f") then 18 @ n++ 19 if ($argv[$n] !~ /*) then 20 set files=($files $cwd/$argv[$n]) 21 else 22 set files=($files $argv[$n]) 23 endif 24 else if ("$argv[$n]" =~ -*) then 25 set flags=($flags $argv[$n]) 26 else 27 set term=($term $argv[$n]) 28 endif 29 @ n++ 30end 31 32switch ($#files) 33case 0: 34 set files=(/etc/termcap) 35case 1: 36 if ($#term != 2) then 37 echo difftc: need two entries to diff 38 exit 1 39 endif 40 breaksw 41case 2: 42 breaksw 43default: 44 echo difftc: too many termcap files 45 exit 1 46endsw 47 48onintr cleanup 49 50if ($#files == 1) then 51 showtc -s $flags -f $files $term[1] > /tmp/tcd$$.old 52 showtc -s $flags -f $files $term[2] | diff /tmp/tcd$$.old - 53else 54 showtc $flags -f $files[1] $term > /tmp/tcd$$.old 55 showtc $flags -f $files[2] $term | diff /tmp/tcd$$.old - 56endif 57 58cleanup: 59rm -f /tmp/tcd$$.old 60