#! /bin/gawk -f # Last edited on 2003-12-20 14:15:01 by hcgl # Pull ";" from ";}" lines to previous line: BEGIN { prev = ""; } /^ *[;][}]/ { lin = $0; match(lin, /^ */); lin = (substr(lin,1,RLENGTH) substr(lin,1+RLENGTH+1)); print (prev ";"); prev = lin; next; } // { print prev; prev = $0; next; } END { print prev; }