awk ' BEGIN { intermed="false" } { segment=$3 if ( segment == oldsegment ) { if ( intermed == "true" ) printf"%12.3f%12.3f 7\n",oldx,oldy else { printf"%12.3f%12.3f 6\n",oldx,oldy intermed="true" } } else if ( intermed == "true" ) { intermed="false" printf"%12.3f%12.3f 8\n",oldx,oldy } else printf"%12.3f%12.3f 9\n",oldx,oldy oldsegment=segment oldx=$1 oldy=$2 } END { printf"%12.3f%12.3f 8\n",oldx,oldy } ' $1 | tail +3 > $1.fix