Re: grep
I find that parsing the .mtarpt.gz file that is used for the timing debug is the easiest way to get simple start, end, slack reports.
report_timing -machine_readable -max_points 50000 -max_slack 5.00 > ${DATE}/${DESIGN}_2_preCTS/${DESIGN}.mtarpt.gz
gzip -cd *.mtarpt.gz | egrep "BEGINPT |ENDPT |SLK ...