I have a source file with two similar yet subtly different sections. I\'d like to merge the two sections into one subroutine with a parameter that handles the subtle difference
i chose to rework @ordnungswidrig's answer into a bash function (i was only interested in the differences from a single file, but this could easily be changed to handle two different files...):
# find differences within a file giving start and end lines for both sections
function diff_sections {
local fname=`basename $1`;
local tempfile=`mktemp -t $fname`;
head -$3 $1 | tail +$2 > $tempfile && head -$5 $1 | tail +$4 | diff -u $tempfile - ;
rm $tempfile;
}
you call the function like so...
diff_sections path/to/file 464 483 485 506