1sed -n -e '/^%%Page.*/p' -e '/.*DW_.*/p' <dwarf.v2.ps | 2sed -n -e '/^%%Page.*/p' -e 's/.*\(DW_[a-z_A-Z]*\).*/\1/p' | 3nawk ' /^%%Page/{ p = $2 } \ 4 /DW_/ { printf "%-30s %04d \n",$1,p \ 5 }' | sort -u | 6nawk ' BEGIN {h = "xx"} \ 7 { \ 8 done = 0 ; \ 9 if ( $1 != h ) { \ 10 if(h != "xx") { \ 11 printf "%-30s %s\n",h, pgs ; \ 12 h = $1 ; \ 13 tv = $2 + 0 ; \ 14 done = 1 ; \ 15 pgs = "" tv \ 16 } \ 17 } \ 18 h = $1 ; \ 19 if(done == 0 ) { \ 20 tv = $2 + 0 ; \ 21 pgs = pgs ", " tv \ 22 } \ 23 } \ 24 END { printf "%-30s %s\n",h,pgs } ' 25