navinc has asked for the wisdom of the Perl Monks concerning the following question:
I have about 30,000 log files which need to be prepped for ingest into a log processor. Here's what the format of the files looks like
PCName: Foo1 Command1:dfie Command2:dfo Command3:dfum PCName: Foo2 Command1:dfie Command2:dfo Command3:dfum
The log processor needs the PCName to appear as the line before each Command. Hence the output of the scripts should be
Any ideas on how to do this in an efficient manner?PCName: Foo1 Command1:dfie PCName: Foo1 Command2:dfo PCName: Foo1 Command3:dfum PCName: Foo2 Command1:dfie PCName: Foo2 Command2:dfo PCName: Foo2 Command3:dfum
The list of commands varies from a couple to dozens for some PC's. Also for brevity I've left out the fact that the results of the commands are also present.
I've tried to use the solution put forth here http://docstore.mik.ua/orelly/perl/cookbook/ch09_11.htm to divide the file into sections by PCName and then further into sections divided by Commands and then modify the command sections to add the PCName prefix.
The files are upto 1MB max so slurping is fine. However I want to ensure that the performance holds up. Also wanted to check if there is an easier way to do this using some Perl Modules.
Thanks.
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: File Find/Replace with the replacement coming from part of earlier matched string
by tmharish (Friar) on Feb 05, 2013 at 06:25 UTC | |
Re: File Find/Replace with the replacement coming from part of earlier matched string
by LanX (Saint) on Feb 05, 2013 at 03:36 UTC | |
Re: File Find/Replace with the replacement coming from part of earlier matched string
by sundialsvc4 (Abbot) on Feb 05, 2013 at 14:18 UTC | |
Re: File Find/Replace with the replacement coming from part of earlier matched string
by 7stud (Deacon) on Feb 05, 2013 at 05:37 UTC | |
Re: File Find/Replace with the replacement coming from part of earlier matched string
by Kenosis (Priest) on Feb 05, 2013 at 13:51 UTC |