Raw Input
The datafile contains 3 kinds of lines:
  • lines begin with 'DATE...' showing the date and time,
  • lines contain 'voxd utilization', and
  • lines contain 'cpu utilization'.
The datafile is:
DATE: 02/02/01  TIME: 00:00
DATE: 02/03/01  TIME: 00:00
DATE: 02/04/01  TIME: 00:00
bta67v10       voxd utilization  93% 17:57 00:10
DATE: 02/05/01  TIME: 00:00
DATE: 02/06/01  TIME: 00:00
bta67c01       cpu utilization   99% 02:00 00:05
bta67c01       cpu utilization   99% 02:32 00:07
bta67v10       voxd utilization  93% 20:31 00:05
DATE: 02/07/01  TIME: 00:00
bta67v10       voxd utilization 100% 17:39 00:01
bta67v10       voxd utilization 100% 19:06 00:34
bta67v22       voxd utilization  93% 09:34 00:12
DATE: 02/08/01  TIME: 00:00
DATE: 02/09/01  TIME: 00:00
Desired Output
For example, there is
  • one 'utilization' record during the day 02/04/01, and
  • three 'utilization' records during the day 02/06/01.
What we want is to eliminate all 'DATE' lines during the indicated day no 'utilization' record occurs and the desired output is:
DATE: 02/04/01  TIME: 00:00
bta67v10       voxd utilization  93% 17:57 00:10
DATE: 02/06/01  TIME: 00:00
bta67c01       cpu utilization   99% 02:00 00:05
bta67c01       cpu utilization   99% 02:32 00:07
bta67v10       voxd utilization  93% 20:31 00:05
DATE: 02/07/01  TIME: 00:00
bta67v10       voxd utilization 100% 17:39 00:01
bta67v10       voxd utilization 100% 19:06 00:34
bta67v22       voxd utilization  93% 09:34 00:12
Script and Comments
Script1
[ 1] /utilization/b
[ 2] $!N
[ 3] /\n.*utilization/!D