cd $1 for i in * do sed -n " /^.TH *[^ ]* */{ s/// s/ .*// h } /^.SH[ ]*NAME *$/{ N s/.*\n// :x N /\\n.SH.*/{ s/// s/^/$i / s/\.[^ .]* / / s/\\n/ /g s/ */ /g G s/\([^ ]*\)\(.*\)\n\(.*\)/\1(\3)\2/ s/[A-Z])/)/ p d } s/\n\..*// bx } " $i done exit # add to shell script to get file references # in this case, pipe output thru uniq /^\.RF *[^ ]*/s//.F/ /^\.FR\(.* \).*/s//.F \1/ /^\.F */{ s//$i / s/\.[^ .]*// G s/\([^ ]*\)\(.*\)\n\(.*\)/\1(\3)\2/ s/[A-Z+])/)/ p }