in reply to Re^12: Help editing a file based off seach criteria
in thread Help editing a file based off seach criteria
First of all, Yes, even you can use CPAN, and you can always copy the code from within modules into your program.
Second, are you sure that it works? Because after adding some print statements to your code to monitor its progress it seem to me that it's not doing anything sensible:
#!/usr/bin/perl use strict; #open DATA, "</home/file.conf"; my $DESIRED_LINE_NUMBER; my $LINE; while (<DATA>) { if(m/END/) { print "END line is on line >$.\n"; print "END line is >$_\n"; my $pos = $.; $pos--; chomp $pos; $DESIRED_LINE_NUMBER = $pos; } } print "Moving to line number $DESIRED_LINE_NUMBER\n"; $. = 0; do { $LINE = <DATA>; print "Discarding: $LINE\n" } until $. == $DESIRE +D_LINE_NUMBER || eof; print "Found desired line $DESIRED_LINE_NUMBER as '$LINE'\n"; __DATA__ foo bar baz END bloob blargh blubb blubb2
But then again, if you're confident that it does what you want, most likely you're also able to modify it yourself to do more of what you want.
The modified program outputs:
C:\Projekte>perl -w tmp.pl >4 >END Moving to line number 3 Use of uninitialized value $LINE in concatenation (.) or string at tmp +.pl line 2 6. Discarding: Use of uninitialized value $LINE in concatenation (.) or string at tmp +.pl line 2 7. Found desired line 3 as ''
... which doesn't look like the line above the END line to me.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^14: Help editing a file based off seach criteria
by perlnewb123 (Sexton) on Jan 13, 2009 at 18:31 UTC | |
by Corion (Patriarch) on Jan 13, 2009 at 18:45 UTC |