#!/bin/sh # pkgdiffex -- diff files against existing patches if [ $# -eq 0 ]; then echo "usage: ${0##*/} file ..." 1>&2 exit 1 fi i=0 while [ $((++i)) -le $# ]; do o=${1%.orig}.orig if [ ! -f "$o" ]; then echo "${0##*/}: file $o does not exist" 1>&2 exit 1 fi shift set -- "$@" "$o" done cmd=cat for o in "$@"; do mv "${o%.orig}" "${o%.orig}".new # f -> f.new cp "$o" "$o"inal # f.orig +> f.original cp "$o" "${o%.orig}" # f.orig +> f done pkgpatchex for o in "$@"; do mv "${o%.orig}" "$o" # f -> f.orig mv "${o%.orig}".new "${o%.orig}" # f.new -> f pkgdiff "${o%.orig}" | $cmd mv "$o"inal "$o" # f.original -> f.orig cmd='sed -n 2,$p' done