# overwrite:  copy standard input to output after EOF
# version 2.  BUG here too

PATH=/bin:/usr/bin

case $# in
1)	;;
*)	echo 'Usage: overwrite file' 1>&2; exit 2
esac

new=/tmp/overwr1.$$
old=/tmp/overwr2.$$
trap 'rm -f $new $old; exit 1' 1 2 15

cat >$new		# collect the input
cp $1 $old		# save original file

trap '' 1 2 15		# we are committed; ignore signals
cp $new $1		# overwrite the input file

rm -f $new $old
