Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw

Re: Replacing Lines in a File

by Stevie-O (Friar)
on May 26, 2004 at 19:52 UTC ( #356711=note: print w/ replies, xml ) Need Help??

in reply to Replacing Lines in a File

As punkish has said, there's no way to do it other than by rewriting the entire file after where you're modifying. However, there are things that can severely reduce the actual amount of stuff you have to code to accomplish that. For your specific example, the -lpe -i.bak oneliner is probably the easiest. Here's an example of something using Tie::File, which allows you to treat a file as an array of lines (change the array, change the file).

tie @array, 'Tie::File', '/data/syslog/log.backup' or die "Damnit, Jim +, he's dead: $!"; s/$ip/$txt/ for @array;
$"=$,,$_=q>|\p4<6 8p<M/_|<('=> .q>.<4-KI<l|2$<6%s!<qn#F<>;$, .=pack'N*',"@{[unpack'C*',$_] }"for split/</;$_=$,,y[A-Z a-z] {}cd;print lc

Comment on Re: Replacing Lines in a File
Select or Download Code

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://356711]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others wandering the Monastery: (9)
As of 2015-11-27 17:31 GMT
Find Nodes?
    Voting Booth?

    What would be the most significant thing to happen if a rope (or wire) tied the Earth and the Moon together?

    Results (731 votes), past polls